1. 程式人生 > >ArcGIS Engine開發基礎總結(一)

ArcGIS Engine開發基礎總結(一)

目錄 reader style mov 空間 圖層 不能添加 頁面 制圖

  • 標準Engine功能

地圖瀏覽 地圖制作 數據查詢 數據分析 及 所有的開發控件 —MapControl, PageLayout, Toolbar, TOC, ArcReader 對所有矢量和柵格數據源的讀權限 對Shapefile和pGDB的寫權限 讀/寫 MXD文件

  • ArcGIS Engine類庫

  1. System System類庫是ArcGIS系統結構中最底層的類庫。System類庫包含了構成為ArcGIS的其他類庫提供服務的組件。

  2. SystemUI 包含用戶界面組件接口定義。如:Icommand、Itool和IToolControl接口。開發者使用這些接口來擴展UI組件。

  3. Geometry 處理存儲在要素類中的要素形狀。如:Point、MultiPoint、Polyline、Polygon等。 存儲構成幾何要素的子要素。如:Segement、Path、Ring等。 存儲幾何要素的空間參考對象。包括:投影坐標和地理坐標系統等。

  4. Display 用於控制地圖顯示。 包含用於顯示GIS數據的對象。 包含符號、顏色等用來控制顯示的對象。 包含交互操作時提供給用戶顯示回饋的對象,如MoveEnvelopeFeedback。

  5. Carto 包含操作2D地圖的對象。 支持2D地圖的創建和顯示。 提供Map和PageLayout等基礎對象。 提供MapDocument對象來操作地圖文檔

  • ArcGIS Engine開發控件

  1. 制圖控件 MapControl、PageLayoutControl等

  2. 框架控件 TOCControl、ToolbarControl等

  3. 三維控件 GlobeControl、SceneControl等

  • MapControl對應於ArcMap Desktop 應用中的“數據” 。 MapControl控件中封裝了Map對象,用於管理控件的外觀、顯示屬性和地圖屬性、管理、添加數據圖層,裝載地圖文檔,顯示、繪制跟蹤圖層。

  • 它實現的主要接口有IMapControlDefault、IMapControl2、 IMapControl3、 IMapControlEvents。

  • PageLayoutControl控件 PageLayoutControl控件主要用於頁面布局與制圖。對應於ArcMap Desktop 應用中的“頁面布局”視圖,該控件封裝了PageLayout類。 PageLayoutControl控件不能添加地圖圖層或地理數據,必須通過MXD文件來加載需要處理的數據。

  • PageLayoutControl控件主要實現 IPageLayoutControlDefault、 IPageLayoutControl、 IPageLayoutControl2、 IPageLayoutControlevents等接口。

  • TOCControl 用來管理圖層的可見性和標簽的編輯。 TOCControl需要一個“夥伴控件”一起工作, “夥伴控件”可以是一個MapControl、 PageLayoutControl、ReaderControl、 SceneControl或者GlobeControl。 “夥伴控件”能夠在設計的時候通過TOCControl的屬性頁設置。或者在程序運行中通過SetBuddyControl方法來設置。 “夥伴控件”都實現了ITOCBuddy接口。 TOCControl利用“夥伴控件”來顯示交互性的樹結構目錄,包括“夥伴控件”的地圖、圖層、符號等內容。

  • ToolbarControl
  • ToolbarControl需要與一個“夥伴控件”一起工作。“夥伴控件”可以是一個MapControl,PageLayoutControl,SceneControl或者是GlobeControl。 “夥伴控件”能夠在設計的時候通過ToolbarControl的屬性頁設置。 ToolbarControl實現了ARCGIS中的所有功能,如果想使這些功能進一步擴展,難度很大

ArcGIS Engine開發基礎總結(一)