ae二次开发常用的类和接口


1、System类库是ArcGIS体系结构中最底层的类库。
2、SystemUI类库包含用户界面组件接口定义,这些用户界面组件可以在ArcGIS Engine中进行扩展。包含ICommand、ITool和IToolControl接口。
3、Geometry类库处理存储在要素类中的要素几何图形或形状或其他图形元素。包括投影坐标和地理坐标系统,都包含在Geometry类库中。 4、Display类库包含用于显示GIS数据的对象。
5、Server类库包含允许用户连接并操作ArcGIS Server的对象。
6、Output类库用于创建图形输出到诸如打印机和绘图仪等设备及诸如增强型元文件和栅格图像格式(JPG、BMP等)等硬拷贝格式。
7、GeoDatabase类库为地理数据库提供了编程API。
8、GISClient类库允许开发者使用Web服务,这些Web服务可以由ArcIMS和ArcGIS Server提供。
9、DataSourcesFile类库包含用于基于文件数据源的GeoDatabase API实现。 10、DataSourcesGDB类库包含用于数据库数据源的GeoDatabase API实现。
11、DataSourcesOleDB类库包含用于Microsoft OLEDB数据源的GeometryDatabase API实现。
12、DataSourcesRaster类库包含用于栅格数据源的GeoDatabase API实现。
13、GeoDatabaseDistributed类库通过提供地理数据库数据导入和导出工具,可以支持对企业级地理数据库的分布式访问。开发者不能扩展GeoDatabaseDistributed类库。
14、Carto类库支持地图的创建和显示,这些地图可以在一幅地图或由许多地图及其地图元素组成的页面中包含数据。
15、Location类库包含支持地理编码和操作路径事件的对象。
16、NetworkAnalysis类库提供用于在地理数据库中加载网络数据的对象并提供对象用于分析加载到地理数据库中的网络。
17、开发者用Controls类库来构建或扩展具有ArcGIS功能的应用程序。 18、GeoAnalyst类库包含支持核心空间分析功能的对象。
19、3DAnalyst类库包含操作3D场景的对象,其方式与Carto类库包含2D地图对象类似。 20、GlobeCore类库包含操作globe数据的对象,其方式与Carto类库包含操作2D地图的对象类似。
21、GlobeCore类库中有一个开发控件及与其一起使用的命令和工具。 22、SpatialAnalyst类库包含在栅格数据和矢量数据上执行空间分析的对象。

接口
1、一个类中有多个按钮时用到ICommandSubType接口。需要在类中同时实现ICommand和ICommandSubType接口。使用ICommandSubType接口需要指定subtype的个数。在每个ICommand属性的实现中设置每个子类型的属性,而不必多次实现ICommand接口。
2、当你创建一个新的COM按钮时,要在你的类代码中实现ICommand接口。这些接口决定了简单按钮的行为和属性。例如,ICommand接口设置了按钮属性如caption,name,caegory,bitmap,statusbar message,tooltip,help context id和help file,enable state,和checked state。

3、IDataset接口是用来管理dataset的主接口。例如,使用这个接口的成员来获得dataset的名称,拷贝、删除或重命名dataset。
4、IFeatureBuffer接口用于设置和返回feature buffer中的默认shape。
5、IFeatureClass接口是获取和设置要素类属性的主要接口。例如,使用IFeatureClass接口获取要素类类型、获取满足查询条件的要素数目或在要素类中创建新要素。IFeatureClass接口继承了IObjectClass接口。
6、IFeatureCursor接口可用来访问要素类中的一系列要素。
7、IFeatureDataset接口该接口继承IDataset。仅增加一个创建要素类的功能CreateFeatureClass。
8、IFeatureSelection用来在图层上管理选择、进行选择,或者修改选择显示的方式。
9、IFeatureWorkspace接口用于访问和管理地理数据库中的要素的重要成分—数据集,如Tables,ObjectClasses,FeatureClasses,FeatureDatasets,和RelationshipClasses。所有的Open方法(例如OpenTable)都要以dataset的名称作为输入。IFeatureWorkspace是用workspace创建和打开对象、对象类的主接口。
10、IFeature接口扩展了其继承的IObject和IRow接口。增加了对要素形状的处理。
11、ILayer 访问所有图层的成员实现IFeatureLayer的类
12、IFeildsEdit接口用于创建fields集合。不能使用该接口在已存在表中删除或插入字段。向已存在对象类添加字段,使用IClass::AddField方法。删除字段使用IClass::DeleteField方法。
13、IFields接口Fields表示表中的列集合。
14、IField接口field对象表示表中的一列。
15、IGeometryDefEdit接口用来创建GeometryDef对象,在定义新的要素类的时候一般会使用这个接口。不能使用IGeometryDefEdit修改与附属于要素类的GeometryDef;
16、IGeometryDef接口以只读的方式访问GeometryDef的属性。
17、该接口用于访问所有图层的成员。ILayer是所有图层对象的公共接口。这个接口有一个绘制图层的方法,并且可访问一般的图层属性。
18、Tools和按钮相似,也需要与应用程序交互。放大按钮就是tool的一个好例子。 查询内置tool的属性或创建自己的COM tool时使用ITool。
创建COM tool时,要在你的代码中实现ICommand接口和ITool接口。使用ITool接口可以定义如下一些事件的实现,如mouse move,mouse button press/release,keyboard key
19、IWorkspaceEdit接口可以使用户开始和结束编辑,在这期间geodatabase中的对象可以更新。
20、IWorkspaceFactory接口提供创建和打开workspace的成员以及访问workspace factory信息的成员。
当需要创建一个新的workspace,连接已存在的workspace和寻找有关workspace的信息时使用IWorkspaceFactory接口。
21、IWorkspace接口提供与workspace信息有关的成员。Worksapce时空间和非空间数据集,如要素类,栅格数据集和表格的容器。它提供实例化数据集和创建新数据集的方法。 22、 IWorkspace2接口提供NameExists方法,可以方便的确定所给名称、指定类型的dataset是否存在。IWorkspace2只在Personal,File和ArcSDE Geodatabase上实现。在其他数据源如shapefile workspace上未实现。
22、使用IMap接口显示各种数据源的数据。
23、通过MxDocument操作Maps和Layers 。MxDocument是ArcMap中用来表示地图文档的类。该类是自定义ArcMap的中心点。本文指出通过IMXDocument如何操作maps和layers。
IMXDocument不是AE的接口,是desktop的接口。

  • 2
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值