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虚拟机(3)类文件结构
虚拟机执行子系统 一.类文件结构 1.魔数和class版本 1.magic-魔数:0xCAFEBABE:4字节 2.minor_version:次版本,丶之后的数字:2字节 3.major_versi ...
- sql中同一个表一个字段的值赋值给另一个字段
UPDATE SG_User SET DefaultOrganizationID = OrganizationID
- MongoDB2.x升级到3.x解决方案
MongoDB2.x版本Maven配置 <!-- mongodb --> <dependency> <groupId>org.springframework.dat ...
- Java新建线程的两种方式
Java新建线程有两种方式,一种是通过继承Thread类,一种是实现Runnable接口,下面是新建线程的两种方式. 我们假设有个竞赛,有一个选手A做俯卧撑,一个选手B做仰卧起坐.分别为两个线程: p ...
- Django基础二之URL路由系统
一 URL配置 Django 1.11版本 URLConf官方文档 URL配置(URLconf)就像Django 所支撑网站的目录.它的本质是URL与要为该URL调用的视图函数之间的映射表.你就是以这 ...
- JavaSE——转换流和缓冲流
转换流: 类 InputStreamReader(字符输入转换流): InputStream 即读取字节流,Reader 为读取字符流. InputStreamReader将字节流转换成字符流.便于一 ...
- R中字符串操作
简介 Stringr中包含3个主要的函数族 字符操作 空格处理 模式匹配 常用函数 在平常的数据分析工作中,经常要用到如下的函数 函数 操作 str_length() 获取字符串长度 str_sub( ...
- vue router 配合transition 切换动画
把<router-view>嵌套在<transition>里,路由变化的时候,vue会为包裹页面的div增加动画样式,我们要做的就是监听路由变化.定义这些动画样式,以规定页面到 ...
- 【Python】Java程序员学习Python(三)— 基础入门
一闪一闪亮晶晶,满天都是小星星,挂在天上放光明,好像许多小眼睛.不要问我为什么喜欢这首歌,我不会告诉你是因为有人用口琴吹给我听. 一.Python学习文档与资料 一般来说文档的资料总是最权威,最全面的 ...
- CSS 实例之文字的凸起与凹陷
一些页面会有一些凹凸文字效果,这个主要是设置背景+文字阴影来达成这个效果的.文字阴影使用方法如下: text-shadow: 水平位置 垂直位置 模糊距离 阴影颜色 具体代码如下: body { ba ...