学习ArcObjects
学习ArcObjects
概要
一旦你知道要定制哪种应用程序(插件、单机程序或是COM组件),下一步就是确定程序需要的ArcObjects.
关于ArcObjects
ArcGIS产品是建立在成千上万的组件之上的,这些组件叫ArcObjects。当你使用应用程序,例如ArcMap,通常会见到ArcOjects,会和ArcObjects打交道。每一个你用来添加数据、编辑、进行空间分析的按钮和工具都是在运行包含ArcObjects的代码。开发者可以获得用来开发ArcGIS产品的ArcObjects。这些组件根据它们之间的相互关系组合成65个程序集。核心程序集包括Carto,Display,Map和Geodatabase。也有关于ArcGIS扩展的程序集,例如3D 分析,空间分析和网络分析。为了开发,你需要熟悉提供你需要功能的ArcObjects。
ArcObjects建立在COM之上,所以AO开发者需要对COM有一个基本的了解。
对象模型图(Object model diagrams)
每个程序集包含可以根据它们之间的类关系成图的ArcObjects。这些图以供了一些信息,例如如何与特定的类协调工作,类之间如何联系。更多关于OMDs的信息,请参阅阅读OMDs。
ArcObjects功能
在地理信息开发中使用ArcObject是的好处是已经知道这些对象如何在GIS应用程序中表现。举个例子,你可写一行代码来使地图刷新而不是写所有的代码来完成实际的绘制工作。如前所述,有成千上万的ArcObjects。所以,本主题的其余部分帮助你定位你需要的对象,以完成你定制的功能。
设置地图图层和几何图形
许多应用需要你和地图交互。添加数据、设计页面布局、设置符号和颜色和给地图添加标注是一些常见的任务。这类任务在 Interacting with and configuring maps, layers, and graphics 有涉及。用于这些任务的程序集是ArcMap和Cartoon
输出和打印地图
一旦你有了一张地图,你可能想输出或打印它。这类工作在 Exporting and printing maps 有设计。用于这些任务的程序集是Output。
与地图显示交互
除了你地图上的数据,你可能想在地图上绘画、显示带时间的数据(time-aware data)、添加动画或者展示移动的对象例如those from a Global Positioning System (GPS) feed。这些任务在 Interacting with the map display 中有所涉及。用于这些任务的程序集有Display, Animation, and EngineCore。
管理数据
除了数据的可视化,通过ArcObjects数据本身也可以被管理。一些典型的任务包括获取和查询空间要素(features)和地理数据库(geodatabases)、建立拓扑关系、获取和处理栅格和影像数据,管理shapefiles,建立几何要素(geometries)和空间参考集(spatial reference set)。这些种类的任务在 Managing data 有设计。用于这些任务的程序集有Geodatabase,DataSourcesFile, DataSourcesGDB, DataSourcesRaster, and Geometry.
本文是对http://help.arcgis.com/en/sdk/10.0/arcobjects_net/conceptualhelp/index.html#/Learning_ArcObjects/0001000000p1000000/一文的翻译,本人翻译,欢迎指正。