ArcGIS Engine开发基础总结(一)
- 标准Engine功能
地图浏览 地图制作 数据查询 数据分析 及 所有的开发控件 —MapControl, PageLayout, Toolbar, TOC, ArcReader 对所有矢量和栅格数据源的读权限 对Shapefile和pGDB的写权限 读/写 MXD文件
ArcGIS Engine类库
System System类库是ArcGIS系统结构中最底层的类库。System类库包含了构成为ArcGIS的其他类库提供服务的组件。
SystemUI 包含用户界面组件接口定义。如:Icommand、Itool和IToolControl接口。开发者使用这些接口来扩展UI组件。
Geometry 处理存储在要素类中的要素形状。如:Point、MultiPoint、Polyline、Polygon等。 存储构成几何要素的子要素。如:Segement、Path、Ring等。 存储几何要素的空间参考对象。包括:投影坐标和地理坐标系统等。
Display 用于控制地图显示。 包含用于显示GIS数据的对象。 包含符号、颜色等用来控制显示的对象。 包含交互操作时提供给用户显示回馈的对象,如MoveEnvelopeFeedback。
Carto 包含操作2D地图的对象。 支持2D地图的创建和显示。 提供Map和PageLayout等基础对象。 提供MapDocument对象来操作地图文档
DataSourcesFile 包含用于基于文件数据源的GeoDatabase API实现。 基于文件的数据源包括:shapefile、coverage、TIN、CAD、SDC、StreetMap和VPF。 开发者不能扩展DataSourcesFile
GeoDatabase 为ArcGIS支持的所有数据源提供了一个统一编程模型。 定义了许多由ArcObjects架构中更高级的数据源提供者实现的接口。 开发者可以扩展地理数据库,以支持特定类型的数据对象。 该类库还支持PlugInDataSource对象添加的自定义矢量数据源
ArcGIS Engine开发控件
制图控件 MapControl、PageLayoutControl等
框架控件 TOCControl、ToolbarControl等
三维控件 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开发基础总结(一)的更多相关文章
- ArcGIS Engine开发前基础知识(3)
对象模型图 一.对象模型图中的类与接口 ArcGIS Engine 提供大量的对象,这些对象之间存在各种各样的关系,如继承.组合.关联等.对象模型图(Object model diagram,ODM) ...
- ArcGIS Engine开发前基础知识(2)
ArcGIS基本控件简介 ArcGIS Engine控件是一组可视化的开发组件,每个ArcGIS Engine控件都是一个COM组件.这些组件包括MapControl,PageLayoutContro ...
- ArcGIS Engine开发鹰眼图的功能(基础篇)
鹰眼是用于调节全视域范围内主地图显示范围情况的副地图.它体现了地图整体与详细局部的关系. 用户可以通过鼠标单击或者画框等动作实现鹰眼与主地图的交互情况. 鹰眼功能的原理是通过主地图窗口的地图控件和鹰眼 ...
- ArcGIS Engine开发之地图基本操作(4)
ArcGIS Engine开发中数据库的加载 1.加载个人地理数据库数据 个人地理数据库(Personal Geodatabase)使用Miscrosoft Access文件(*.mdb)进行空间数据 ...
- ArcGIS Engine开发的ArcGIS 版本管理的功能
原文:ArcGIS Engine开发的ArcGIS 版本管理的功能 转自:http://blog.csdn.net/linghe301/article/details/7965901 这是以前的Arc ...
- ArcGIS Engine开发鹰眼图的功能(代码优化篇)
在上一篇,ArcGIS Engine开发鹰眼图的功能(基础篇) 上一篇的实现效果图如下, 如果仔细观察,会发现一个问题,即在“鹰眼”的区域,只要在红色线框内的注记会被覆盖. 如果红色框包括整张图的话, ...
- C#,ArcGIS Engine开发入门教程
C#,ArcGIS Engine开发入门教程 转自:http://blog.csdn.net/yanleigis/article/details/2233674 目录(?)[+] 五实现 一 加载A ...
- ArcGIS Engine开发前基础知识(4)
ArcGIS不同开发方式的比较 关于GIS应用软件的开发,通常有三种方式:C/S架构.网络GIS和移动GIS.ArcGIS平台提供了对三种开发方式的支持,对于采用从C/S架构的大多数开发者来讲,首先想 ...
- ArcGIS Engine开发前基础知识(1)
ArcGIS二次开发是当前gis领域的一项重要必不可少的技能.下面介绍它的基本功能 一.ArcGIS Engine功能 在使用之前首先安装和部署arcgis sdk,(在这里不在赘述相关知识)可以实现 ...
随机推荐
- Java 和 JSP 实现网站访问量统计 (刷新过滤)
java 和 JSP 实现的统计网站访问量,不需要数据库,将数据存储在 指定位置的 txt 文件中,代码块分为两部分 首先, java 部分: import java.io.File; import ...
- SpringBoot源码分析之SpringBoot的启动过程
SpringBoot源码分析之SpringBoot的启动过程 发表于 2017-04-30 | 分类于 springboot | 0 Comments | 阅读次数 SpringB ...
- C#byte类型
byte类型的范围是0~255转换为二进制是00000000~11111111 ---------------------------------------------------------- C ...
- 虚拟机VirtualBox安装
一.安装VirtualBox 下载地址:https://www.virtualbox.org/wiki/Downloads 一直点击下一步到结束就行了. 二.启动报错:“获取 VirtualBox C ...
- 提高 ASP.NET Web 应用性能的 24 种方法和技巧(转载)
在这篇文章中,将介绍一些提高 ASP.NET Web 应用性能的方法和技巧.众所周知,解决性能问题是一项繁琐的工作,当出现性能问题,每个人都会归咎于编写代码的开发人员. 以下为译文 那性能问题到底该如 ...
- c#读取html文件内容替换之后再写入
string sss = File.ReadAllText("E:\\FM\\Mall\\MallSGWeb\\MallSGWeb\\MALL_simple\\File\\11111.htm ...
- 未能加载“xxx”程序集
找到程序集名称,去项目文件中查找是否拥有.
- elasticsearch java使用
本文将介绍如何使用java调用elasticsearch的api 1.获取client连接 package com.test.elasticsearch; import java.net.InetAd ...
- vue常见知识点整理
什么是 mvvm? MVVM 是 Model-View-ViewModel 的缩写.mvvm 是一种设计思想.Model 层代表数据模型,也可以在 Model 中定义数据修改和操作的业务逻辑:View ...
- 【代码笔记】iOS-iOS图片的原生(Graphics)
一,效果图. 二,工程图. 三,代码. RootViewController.h #import <UIKit/UIKit.h> @interface RootViewController ...