[AE] 地图整饰-MapControl|PageLayoutControl|Map|PageLayout|IActiveView|IGraphicsContainer|Element

MapControl地图控件

MapControl控件对应ArcMap中的数据视图(Data View),封装了Map对象(Coclass,组件类),并提供了额外的属性、方法、事件

功能:

  1. 管理里控件的外观、显示属性和地图属性;
  2. 添加并管理控件中的数据层;
  3. 装载Map地图文档(mxd);
  4. 动态添加和显示几何对象等

IMap主要接口

IMap pMap = axMapControl1.Map; //axMapControl1是AE工程中自定义的变量

PageLayoutControl页面布局控件

PageLayoutControl对应ArcMap中的布局视图(Layout View),它封装了PageLayout对象,并提供了额外的属性、方法、时间。

功能:

  1. 加载地图文档(mxd);
  2. 绘制地理元素;
  3. 创建布局视图(图例、指北针和比例尺等)
  4. 地图的打印输出

IPageLayout主要接口:

IPageLayout pPageLayout = this.axPageLayoutControl1.PageLayout; //axPageLayoutControl1是AE工程中自定义的变量

Map与PageLayout类

PageLayout与Map都是视图对象,能够显示地图,都实现了IActiveView接口;同时它们都是图形元素的容器,能存储图形元素(Graphics Element),都实现了IGraphicsContainer接口

PageLayoutControl中有Map(地图)、PageLayout(页面布局)

  1. Map(地图):地图总是在Map对象中;
  2. PageLayout页面布局中至少有一个MapFrame地图框架
  3. MapFrame拥有一个Map,管理者PageLayoutControl中的Map

PageLayout能保存图形元素和框架元素(Frame Element)

IActiveView激活视图

定义了Map对象的数据显示功能。通过使用该接口可以在Map上绘制图形,改变视图的范围,获取ScreenDisplay对象的指针,刷新视图

常用类型说明
Extent属性返回对象当前视图范围,返回类型Envelope
FullExtent属性返回视图的全图范围
Refresh()方法刷新视图
PartialRefresh()方法部分刷新方法

使用:

IActiveView pActiveView = pMap as IActiveView;
IActiveView pActiveView = pPageLayout as IActiveView;

IGraphicsContainer容器

IGraphicsContainer管理所有元素

常用说明
AddElement(pElement,0)添加元素
UpdataElement()更新元素
DeleteElement()删除元素
LocateElement()选择元素
DeleteAllElement删除所有元素
LocateElementsByEnvelopeMap上拖拽一个矩形区域,选择区域内的元素
SpatialReference属性空间参考

使用:

IGraphicsContainer pGraphicsContainer = axMapControl1.Map as IGraphicsContainer;
IGraphicsContainer pGraphicsContainer = axPageLayoutControl1.PageLayout as IGraphicsContainer;

元素Element

Element

ArcGIS中可以显示在视图上的图形分为两种:地理数据(geometry)、元素(Elemnt)数据。
Element:一个地图中出去要素数据外的部分,即在一服地图中,除了保存在数据库中的地理数据外,其余的对象都是元素(图形元素、框架元素)

  1. 图形元素(GraphicsElement):可以被放在页面视图或地图上
    Marker、Line、Polygon、Text、Pictures
  2. 框架元素(Frame Element):只能放在页面视图上
    Map Frames、North arrows、legends、scale bars、table frames

这里写图片描述

IElemnt接口

  1. IElement是所有图形元素和框架元素都实现的接口。
  2. 此接口可以确定Element对象的Geometry属性(空间位置);
  3. IElement接口也提供了用于查找和绘制元素的方法

FrameElement框架元素

主要接口:IFrameElement

FrameElement包括:MapFrame、MapSurroundFrame、OleFrame和TableFrame等

MapFrame

Map的容器,用于管理Map对象,实现IMapFrame接口

MapSurround

指图例、指北针、比例尺、比例文本等

MapSurround并不是直接被加入到PageLayout中的,而是被加入到某一特定类型的框架元素MapSurroundFrame

MapSurroundFrame

MapSurroundFrame对象是MapSurround的容器,是一种用于管理MapSurround对象的框架元素

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

geodoer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值