ArcGis Engine 的类库(1)

不同的数据源通常有相应的图层负责数据在地图上的显示,矢量要素
由 FeatureLayer 对象处理,栅格数据由 RasterLayer 对象处理,TIN
数据由TinLayer对象处理,等等。必要的话,图层可以处理与之相关
数据的所有绘图操作,但通常图层都是一个相关的 Renderer 对象。
Renderer 对象的属性控制着数据在地图中的显示方式。Renderers 通
常用Display 类库中的符号来进行实际绘制,而Renderer只是将特定
符号与待绘实体的属性相匹配。Map 对象和 PageLayout 对象可以包含
元素。元素用其几何图形定义其在地图或页面上的位置,用行为控制
元素的显示。包括用于基本形状、文字标注和复杂标注等的元素。Carto
类库还支持地图注释和动态标注。
尽管开发者可以在其应用程序中直接使用 Map 和 PageLayout 对象,但
通常来说开发者更经常使用更高级的对象,如 MapControl、
PageLayoutControl 或 ArcGIS 应用程序。这些高级对象简化了一些任
务,尽管它们也提供对更低级别的Map和PageLayout对象的访问,允
许开发者更好的控制对象。
Map 和 Pagelayout 对象并不是 Carto 类库中提供地图和页面绘制的仅
有对象。MxdServer和MapServer对象都支持地图和页面的绘制,但不
是绘制到窗口中,而是直接绘制到文件中。
开发者可以用 MapDocument 对象保存地图和地图文档(.mxd)中页面
布局的状态,以便在ArcMap或ArcGIS控件中使用。
Carto 类库通常可以在许多方面进行扩展。自定义 Renderer、Layer
等都很普遍。自定义图层通常是向地图应用程序中加载自定义数据最
简单的方法。
Location 类库
Location 类库包含支持地理编码和操作路径事件的对象。地理编码功
能可以通过细粒度对象来完全控制访问,或通过 GeocodeServer 对象
提供的简化 API 来访问。开发者可以创建自己的地理编码对象。线性
参考功能提供对象用于向线性要素添加事件,用各种绘制方法来绘制
这些事件。开发者可以扩展线性参考功能。
NetworkAnalysis 类库
NetworkAnalysis 类库提供用于在地理数据库中加载网络数据的对象
并提供对象用于分析加载到地理数据库中的网络。开发者开以扩展
NetworkAnalysis类库以便支持自定义网络追踪。这个类库目的在于操
作公共网络:供气管线、电力供应线网等。

Controls 类库
开发者用 Controls 类库来构建或扩展具有 ArcGIS 功能的应用程序。
ArcGIS Controls 通过封装 ArcObjects 并提供粗粒度的 API 简化了开
发过程。尽管这些控件封装了细粒度的 ArcObjects,但是并不限制对
这些细粒度的ArcObjects的访问。MapControl和PageLayoutControl
分别封装了 Carto 类库的的 Map 和 PageLayout 对象。ReaderControl
同时封装了 Map 和 PageLayout 对象,且在操作控件时提供了简化的
API。如果授权了地图发布程序,开发者可以以访问Map和PageLayout
控件类似的方式访问内部对象。Controls 类库还包含实现一个目录表
的TOCControl 及驻留操作合适控件的命令和工具的ToolbarControl。
开发者通过创建自己的用于操作控件的命令和工具来扩展Controls类
库。为此 Controls 类库提供 HookHelper 对象。这个对象使得创建一
个操作任何控件及操作诸如 ArcMap 这样的 ArcGIS 应用程序的命令变
得非常简单。
GeoAnalyst 类库
GeoAnalyst 类库包含支持核心空间分析功能的对象。这些功能用在
SpatialAnalyst 和 3Danalyst 两个类库中。开发者可以通过创建新类
型的栅格操作来扩展GeoAnalyst类库。为使用这个类库中的对象,需
要ArcGIS Spatial Analyst 或3D Analyst扩展模块许可,或者ArcGIS
Engine运行时空间分析或3D分析选项许可。
3DAnalyst 类库
3Danalyst类库包含操作3D场景的对象,其方式与Carto类库包含操作
2D地图的对象类似。Scene对象是3Danalyst类库中主要对象之一,因
为该对象与Map对象一样,是数据的容器。Camera和Target对象规定
在考虑要素位置与观察者关系时场景如何浏览。一个场景由一个和多
个图层组成;这些图层规定了场景中包含的数据及这些数据如何显示。
开发者很少扩展 3Danalyst 类库。为使用这个类库中的对象,需要
ArcGIS 3D Analyst 扩展模块许可或 ArcGIS Engine 运行时 3D 分析选
项许可。
GlobeCore 类库
GlobeCore类库包含操作globe 数据的对象,其方式与Carto类库包含
操作2D地图的对象类似。Globe对象是GlobeCore类库中主要对象之
一,因为该对象与 Map 对象一样,是数据的容器。GlobeCamera 对象
规定在考虑 globe 位置与观察者关系时 golbe 如何浏览。一个 golbe 有
一个和多个图层;这些图层规定了golbe中包含的数据及这些数据如何

显示。
GlobeCore类库中有一个开发控件及与其一起使用的命令和工具。该开
发控件可以与Controls类库中的对象协同使用。
开发者很少扩展 GlobeCore 类库。为使用这个类库中的对象,需要
ArcGIS 3D Analyst 扩展模块许可或ArcGIS Engine 运行时3D分析选
项许可。
SpatialAnalyst 类库
SpatialAnalyst 类库包含在栅格数据和矢量数据上执行空间分析的对
象。开发者通常使用这个类库中的对象,而不扩展这个类库。为使用
这个类库中的对象,需要 ArcGIS 空间分析扩展模块许可或 ArcGIS
Engine 运行时空间分析选项许可。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值