內容簡介
本書將GIS理論知識和實際套用相結合,在Visual Studio 2010.NET開發環境下,以C#作為開發語言,結合大量實例,介紹了利用ArcGIS Engine 10.0進行GIS二次開發的方法、過程和技巧。本書內容主要包括ArcGIS Engine接口的概念,利用ArcGIS Engine構建GIS基本框架的方法,在ArcGIS Engine環境下空間數據訪問與查詢、空間數據投影轉換、矢柵數據結構轉換、符號化顯示與符號庫定製、空間數據編輯、外部屬性數據操作與專題圖製作、地圖整飾與列印輸出、空間數據裁剪、地形分析、插值方法、疊加分析、地圖配準,以及空間數據圖飾符號標註等功能的實現方法。每個章節都對應一個具體的GIS功能,先介紹基本概念,然後講述ArcGIS Engine 10.0實現這些功能所提供的方法,並給出了具體的實現過程。
圖書目錄
目 錄
第1章 ArcGIS Engine概述1
1.1 ArcGIS Engine介紹1
1.2 ArcGIS Engine的主要特點3
1.3 ArcGIS Engine與其他組件的區別與聯繫3
1.4 ArcGIS Engine 10.0的安裝4
1.5 第一個ArcGIS Engine 10.0程式的開發8
1.6 ArcGIS Engine從9.3升級到10.0方法11
第2章 ArcGIS Engine基礎13
2.1 接口的定義13
2.1.1 COM的基本概念13
2.1.2 使用COM對象14
2.1.3 IUnknown接口14
2.1.4 面向接口編程14
2.1.5 接口訪問16
2.2 什麼是對象模型圖17
2.3 ArcGIS Engine類庫結構21
2.4 ArcGIS Engine的控制項介紹27
2.4.1 MapControl控制項28
2.4.2 PageLayoutControl控制項32
2.4.3 TOCControl控制項33
2.4.4 ToolbarControl控制項37
2.5 地圖瀏覽功能的實現45
第3章 地圖數據載入47
3.1 概述47
3.2 地圖與圖層48
3.2.1 地圖48
3.2.2 圖層49
3.3 載入圖層50
3.3.1 工作空間與工作空間工廠50
3.3.2 幾種常用數據類型的載入54
3.4 圖層控制57
3.5 創建新的Shape檔案59
3.5.1 Field和Fields對象59
3.5.2 利用Field和Fields對象創建Shape檔案60
第4章 地圖符號化66
4.1 概述66
4.2 ArcGIS Engine的顏色66
4.2.1 顏色概述66
4.2.2 Color對象68
4.2.3 ColorRamps顏色梯度對象69
4.3 地圖符號化71
4.3.1 MarkerSymbol71
4.3.2 LineSymbol74
4.3.3 FillSymbol76
4.3.4 TextSymbol81
4.3.5 3DChartSymbol82
4.4 符號控制項的使用(SymbologyControl)83
4.5 自定義符號庫90
4.5.1 符號的繪製與保存90
4.5.2 符號的配置93
4.5.3 符號導入/導出與管理93
4.6 地圖示注與標記93
第5章 地圖整飾與輸出98
5.1 概述98
5.2 地圖整飾及其實現98
5.2.1 地圖整飾概述98
5.2.2 元素(Element)類型99
5.2.3 圖形元素及其套用100
5.2.4 框架元素及其套用103
5.3 地圖輸出及其實現123
5.3.1 地圖列印123
5.3.2 地圖圖片格式輸出124
5.3.3 輸出地圖的實例125
第6章 幾何對象和空間參考129
6.1 幾何對象129
6.1.1 點和多點131
6.1.2 Segment、Path、Ring和Polyline對象132
6.1.3 Polygon對象136
6.1.4 Curve幾何對象137
6.1.5 MultiPatch幾何對象139
6.1.6 Geometry集合接口139
6.2 空間參考143
6.2.1 ArcGIS Engine中的坐標系143
6.2.2 ArcGIS Engine的空間參考145
6.2.3 距離及面的積量算功能實現152
第7章 地圖編輯155
7.1 地圖編輯相關類與接口155
7.1.1 IWorkspaceEdit接口155
7.1.2 IWorkspaceFactory接口156
7.2 編輯功能介紹及實現157
7.2.1 啟動編輯流程157
7.2.2 添加要素159
7.2.3 修改要素161
7.2.4 撤銷與重做166
7.2.5 屬性的編輯168
7.3 創建自定義的地圖編輯工具170
第8章 空間查詢172
8.1 空間查詢相關的類和接口172
8.1.1 Cursor對象172
8.1.2 ISelectionSet接口174
8.1.3 IFeatureSelection接口174
8.1.4 QueryFilter與SpatialFilter175
8.2 根據圖形查詢空間數據的屬性176
8.3 根據屬性條件查詢空間數據180
8.4 根據空間關係查詢空間數據184
8.5 連線外部資料庫190
8.6 清除結果集193
8.7 統計分析194
第9章 專題地圖製作196
9.1 ArcGIS Engine專題地圖概述196
9.2 簡單繪製197
9.3 唯一值繪製/多欄位唯一值繪製197
9.4 點密度/多欄位點密度繪製203
9.5 數據分級繪製205
9.6 直方圖和餅圖212
9.6.1 直方圖213
9.6.2 餅圖217
第10章 矢量數據空間分析221
10.1 地學處理(GP)工具套用221
10.2 緩衝區分析224
10.3 疊置分析226
10.4 網路分析234
10.4.1 網路分析相關的類及接口235
10.4.2 最短路徑的實現235
10.5 TIN與泰森多邊形生成241
10.5.1 TIN數據模型241
10.5.2 泰森多邊形243
第11章 柵格數據空間分析245
11.1 柵格數據簡介245
11.2 柵格數據相關的接口246
11.2.1 IRasterProps246
11.2.2 IRasterCursor246
11.2.3 IPixelBlock247
11.2.4 IRasterLayerExport247
11.2.5 IRasterBandCollection247
11.2.6 IRaster247
11.3 柵格數據訪問248
11.4 柵格數據渲染250
11.5 柵格數據分析255
11.5.1 柵格查詢255
11.5.2 柵格數據統計257
11.5.3 柵格數據裁剪263
11.5.4 柵格計算器269
11.5.5 柵格數據歸一化273
11.5.6 矢柵數據結構互相轉換274
11.5.7 柵格表面分析279
11.5.8 柵格重分類282
11.5.9 插值計算283
11.5.10 柵格局部操作287
11.5.11 地圖配準289
第12章 ArcGIS Engine程式的發布291
12.1 Visual Studio 2010製作安裝程式291
12.2 Install Shield製作安裝程式294