ArcObjects GIS应用开发——基于C#.net
目录
1-开发基础
1.1 ArcObjects基础
1.1.1 ArcObjects简介
1.1.2 ArcObjects的组件库
1.1.3 理解对象模型图
1.2 组件对象模型
1.2.1 软件开发历史
1.2.2 什么是组件对象模型
1.3 .net平台概述
1.3.1 通用语言运行时
1.3.2 .net Framework类库
1.4 .net组件与COM组件的互操作
1.4.1 COM包装(COM Wrappers)
1.4.2 ESRI提供的PIAs
1.4.3 向COM公开.net对象
1.4.4 COM到.net的类型转换
1.5 ArcGIS开发资源
1.5.1 ArcGIS SDK
1.5.2 ESRI DNW site
1.6 ArcGIS的二次开发方式
1.6.1 使用VBA进行ARCGIS桌面定制
1.6.2 使用DLL组件扩展ArcGIS
1.6.3 使用空间构建独立应用程序
2-ArcMap用户界面定制
2.1 Application对象
2.1.1 IApplication接口
2.1.2 IMxApplication接口
2.1.3 IWindowPostio接口
2.1.4
IEnumprinterNames接口
2.2 Document对象
2.2.1 IMxDocument接口
2.2.2
IDocumentDefaultSymbols接口
2.2.3 IDocumentEvents、IDocumentEventsDisp接口
2.3 定制ArcMap的界面
2.3.1 定制状态栏
2.3.2 定制可停靠窗口
2.3.3 快捷键表
2.3.4 CommandBars和CommandBar对象
2.3.5 CommandItem对象
2.4 UIControl的使用
2.5 使用Exetension扩展ArcGIS
3-使用ArcObjects控件编程
3.1 MapControl控件
3.1.1 主要接口
3.1.2 MapControl控件与 MXD文件
3.1.3 鼠标与控件交互
3.1.4 数据选择
3.1.5 实现鹰眼功能
3.2 PageLayerOut Control控件
3.2.1 PageLayerOut Control操作MXD文档
3.2.2 PageLayerOut与MapControl联动
3.2.3 在PageLayerOut里面绘制元素
3.3 TOCControl控件
3.3.1 TOCControl控件概述
3.3.2 应用开发实例
3.4 ToolBarControl及相关对象
3.4.1 概述
3.4.2 ToolBarControl控件
3.4.3 ToolBarItem
3.4.4 ToolBarMenu组件类
3.4.5 CustomizeDialog
3.5 ControlCommands
3.5.1
概述
3.5.2 ControlCommands with the ToolbarControl
3.5.3 ControlCommands without the ToolbarControl
3.6 应用开发实例
3.6.1 概述
3.6.2 自定义命令开发实例
3.6.3 自定义工具开发实例
3.6.4 自定义菜单开发实例
4-几何形体对象-GeoMetry
4.1 GeoMetry模型
4.2 Point和MultiPoint对象
4.2.1 Point对象
4.2.2 Multipoint对象
4.3 包络线Envelope
4.4 曲线Curve
4.4.1 Segment对象
4.4.2 路径(Path)对象
4.4.3 环(Ring)对象
4.4.4 PolyCurve对象
4.5 GeoMetry集合接口
4.5.1 IGeometryCollection接口
4.5.2 ISegmentCollection接口
4.5.3 IPointCollection接口
4.6 动态追踪
4.7 空间参考
4.7.1 什么是空间参考
4.7.2 两种坐标系统
4.7.3 AO中空间参考的设置
4.7.4 SpatialReference对象
5-地图组成
5.1 Map对象
5.1.1 IMap接口
5.1.2 IGraphicsContainer接口
5.1.3 IActiveView接口
5.1.4 IActiveViewEvents接口
5.1.5 IMapBookmark接口
5.1.6 ITableCollection接口
5.2 图层对象
5.2.1
ILayer接口
5.2.2 要素图层
5.2.3 往地图中加入CAD文件
5.2.4 TIN图层
5.2.5 GraphicsLayer
5.3 ScreenDisplay对象
5.4 地图排版
5.4.1 PageLayOut对象
5.4.2 Page对象
5.4.3 SnapGrid对象
5.4.4 SnapGuides对象
5.4.5 RulerSettings对象
5.5 Element对象
5.5.1 图形元素
5.5.2 框架元素
5.5.3 元素的选择跟踪对象
5.6 MapGrid对象模型
5.6.1 MapGrid对象
5.6.2 MapGridBorder对象
5.6.3 MapGridLabel对象
5.6.4 MapGridFactory对象
5.7 MapSurround对象
5.7.1 图例对象
5.7.2 指北针对象
5.7.3 比例尺对象
5.7.4 比例尺文本对象
5.8 使用Style对象
5.8.1 StyleGallery对象
5.8.2 StyleSelector对象
5.8.3 IstyleDialog接口
5.9 IDentifyDialog对象
6-空间数据的符号化
6.1 颜色对象
6.1.1 Color对象
6.1.2 颜色对话框
6.1.3 ColorRamp对象
6.2 Symbol对象
6.2.1 MarkerSymbol对象
6.2.2 Line Symbol对象
6.2.3 FillSymbol对象
6.2.4 TextSymbol对象
6.2.5 3DChartSymbol对象
6.3 制作主题图
6.3.1 SimpleRenderer着色法
6.3.2 ClassBreakRenderer着色法
6.3.3 UniqueValueRenderer着色法
6.3.4 ProportionalSymbolRenderer着色法
6.3.5 ChartRenderer着色法
6.3.6 DotDensityRenderer着色法
6.3.7 着色中使用的计算方法
6.4 地图的标注
6.4.1 TextElement标注
6.4.2 ArcObjects中的标注
6.5 如何与地图进行互动
6.5.1 产生新Geomentry的Feedback对象
6.5.2 移动几何形体对象上的节点
6.5.3 移动整个对象
6.5.4 其他DisplayFeedback介绍
7-地图输出
7.1 地图的打印输出
7.1.1 Printer类
7.1.2 Paper对象
7.1.3 在控件中打印输出
7.2 地图的转换输出
7.2.1 基于影像格式的输出
7.2.2 基于矢量格式的输出
7.2.3 ExportFileDialog对象
8-空间数据管理
8.1 GeoDatabase的基础知识
8.2 Workspace及相关对象
8.2.1 打开工作空间
8.2.2 工作空间
8.2.3 PropertySet
8.2.4 名称对象
8.3 DataSet对象
8.3.1 GeoDataset类
8.3.2 FeatureDataSet对象
8.4 表、对象类和要素类
8.4.1 Table对象
8.4.2 ObjectClass对象
8.4.3 FeatureClass对象
8.4.4 字段集于字段
8.4.5 与字段相关的对象
8.5 ROW,Object和Feature对象
8.5.1 RowBuffer和Row对象
8.5.2 Object和Feature对象
8.5.3 点选法获取要素
8.5.4 更细要素
8.6 关系与关系类
8.7 数据转化与装载
9-空间分析
9.1 空间查询
9.1.1 Cursor对象
9.1.2 QueryFilter与SpatialFilter对象
9.1.3 QueryDef对象
9.1.4 TableSort对象
9.1.5 要素选择集
9.2 空间拓扑运算
9.2.1 ITopologicalOperator接口
9.2.2 开发实例
9.3 空间关系运算
9.3.1 IRelationaloperator接口
9.3.2 开发实例-查找某一多边形要素的所有邻接要素
9.4 PROXIMITYOPERATOR接口
9.5 叠加分析
9.5.1 矢量图层叠加分析
9.5.2 栅格图层的叠加分析
10-空间数据编辑-MapEditing实例剖析
10.1 IWORKSPACEEDIT接口
10.2 MapEditing功能解析
10.2.1 功能概述
10.2.2 代码分析
11-ArcCatalog对象
11.1 GxObject对象
11.2 GxDialog对象
12-Raster数据简介
12.1 RasterWorkSpace对象
12.2 栅格数据集
12.3 栅格图层对象
参考文献