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的接口。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章