在一个团队中,不乏编程的高手,但有时却缺乏GIS高手。结合自己的工作,以ArcGIS为例,来补充解答ArcObjects的问题。面对问题,大家一起探讨,我们会将所有的问题日益完善,并解答。非常欢迎大家的留言及后续补充,同时个别解答不完善的地方,欢迎指正。
1、AO、AE与SOE
ArcObjects(AO)是构建所有ArcGIS应用的底层类库,是实现ArcGIS功能的核心;ArcGIS Engine则是基于AO的C/S模式开发框架。
ArcGIS Engine(AE)开发,通常用于C/S模式的应用系统开发,它需要安装有ArcGIS Engine Runtime;
AO开发,则可以适用于Desktop和Server的开发,没有ArcGIS Engine同样可以。AO开发可以实现:Desktop功能拓展(如Desktop的工具条、各种工具)、Server服务端的功能拓展(开发服务器端的底层功能实现)
所以 AO>AE,甚至可以说 AO>>AE
SOE(Server Object Extension),即是Server服务器端的拓展开发。这也是未来ArcGIS Server 10.1版本之后拓展Server功能的基本方式,它同样也是基于AO实现的。我会今后整理这一方面内容,并与大家分享。
2、.Net中的类比AO中的类多了class后缀
比如AO中是Point类,而.NET中却多了个PointClass类,等等
其实简化理解就可以了。Point类是基于COM的纯AO类,而PointClass是AO类经.Net封装后形成的类。仅此而已,两者在使用中没有区别。
3、ArcGIS Engine中的AxMapControl是什么类,与MapControl什么关系
AxMapControl非AO类,它是AO的MapControl经.NET封装后形成的,因此在ArcObjects的帮助文档中查无此类。欲知AxMapControl的属性和方法,查询ArcObjects帮助中的IMapControl相应接口,基本相当。
其实,出现AxMapControl的本质在于:Engine多是创建.NET窗体程序,MapControl对象虽为Map控件,但它并不能直接添加在.NET的Form中显示。只有将MapControl封装为.NET的控件,即AxMapControl,才可以在Form程序中运行显示。
分享到:
相关推荐
ArcObjects开发进行一个初级介绍
学习ArcObjects 的必备书籍噢
使用ARCOBJECTS控件编程
arcobjects 10.3 for java 开发包
ArcObjects GIS应用开发——基于C#.NET(第一版)
基于java开发的arcobjects简单应用,实现了简单的界面,有工具栏,可以加载数据地图文档,显示图层。
arcobjects-10.2.jar
在Delphi中用ArcObjects开发应用程序
使用ArcObjects开发源代码
ArcObjects+C#开发
arcobjects方法arcobjects方法
ArcObjects 10.7 离线帮助文档,从10.7那提取的,方便AO/AE开发的朋友快速查询API,rar密实压缩文件,解压就能用,在注释里说了怎么用
第三章:使用ARCOBJECTS控件编程 第四章:几何形体对象-GEOMETRY 第五章:地图的组成 第六章:空间数据的符号化 第七章:地图的输出 第八章:空间数据管理 第九章:空间分析 第十章:空间数据编辑-MAPEDITING实例...
ESRI ArcGIS AO开发书籍Exploring ArcObjects
详细的ArcObjects对象模型图,Visio绘制。
arcobjects学习基础
arcobjects.jar arcobjects.jar ARCGIS JAVA
描述了在ArcObjects中Cursor的分类和使用,面对不同的数据来源,如ITable,FeatureClass,如果进行Insert,Update,Select操作
ArcObjects 开发入门^_^