注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

naigeer的知识库

不断学习,用知识武装头脑,用头脑创造未来!

 
 
 

日志

 
 

[转载]Element对象——可显示和不可显示的图形  

2007-12-17 16:25:30|  分类: ArcGIS开发 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

Arcgis中可以显示在视图上的图形分为两种,一种是基于Layer的要素(Feature)等储存在数据库中的数据源,另外一种就是元素(element)。元素是一个地图中除去要素数据外的部分,即在一幅地图中,除了保存在数据库中的地理数据外,其余的对象全部是元素。

Element是一个非常庞大复杂的对象集合,它主要分为两大部分:图形元素(Graphic Element)和框架元素(Frame Element)。

图形元素包括GroupElement、MarkerElement、LineElement、TextElement, DataGraphElement、PictureElement和FillShapeElement等对象,它们都是作为图形的形式而存在,在视图上是可见的。框架元素包括FrameElement、MapFrame、MapSurroundFrame、OleFrame和TableFrame等对象,它们都是作为不可见的容器而存在的。

在Map或PageLayout对象中可以通过IGraphicsContainer接口来管理这些元素,使用这个接口定义的方法可以添加、删除和更新单个的存在Map或PageLayout上的元素。使用GroupElement对象还可以将多个元素编组作为单个实体来给用户使用。

IElement是所有图形元素和框架元素类都实现的接口。这个接口可以让程序员确定元素的Geometry属性,它也定义了方法让用户查找元素和绘制元素。Element只是一个抽象类,在实际编程中必须明确指定使用元素的类型。另外还必须提醒读者的是IElement和ILineElement、ITextElement等并不是父子关系,后者中没有Geometry属性。

所有的图形元素(Graphics Element)类都实现了IGraphicsElement接口,这个接口定义了一个SpatialReference属性用于设置这些图形元素的空间参考。空间参考是一个图形能够在一定范围内正确显示所必须设置的属性。

除此之外,图形元素还实现ITransform2D接口,这个接口定义的方法和属性可以让图形元素移动、旋转和缩放。

1、 LineElement和MarkerElement对象

要将图形元素显示在视图上,一般的步骤是这样的:

a、  产生一个新的元素对象;

b、  确定元素显示时使用的Symbol(符号)和Geometry(几何形体对象);

c、  使用IGraphicsContainer::AddElement把元素添加到视图中去;

d、  刷新视图,让添加的元素可以显示出来。

2、TextElement对象

地图的标注有两种形式:一种是保存在地理数据库中以标注类的形式存在,另一种是使用文字元素。

3、DataGraphElement对象

       DataGraph是一种基于地理数据的图形,在ArcMap中载入地理数据后,点击“Tools”——“Graphs”——“Create”,系统依据数值数据产生一张统计表。

IDataGraphElement接口仅仅被DataGraphElement对象所实现,它定义了两个属性,IDataGraphElement::DataGraph用于设定元素的数据图表对象,而IDataGraphElement::Map则需要被设置为图表的父地图对象。

4、GroupElement对象

GroupElement对象可以将多个元素编为一组当一个实体来使用。如果用户需要对多个要素进行相同的操作,如同时移动多个要素的时候,可以将它们编为一个组。GroupElement类默认实现IGroupElement接口,它定义了操作GroupElement的方法和属性。

5、FillShapeElement对象

FillshapeElement是一个抽象类,它的子类有CircleElement、EllipseElement、PolygonElement和RectangleElement。这些对象的共同特点是它们的Geometry属性都是一个二维的封闭图形,在视图上分别表现为圆形要素、椭圆要素、多边形要素和矩形要素。

6、PictureElement对象

PictureElement是一个抽象类,它的两个子类BmpPictureElement和EmfPictureElement,它们分别用于往版式视图中插入bmp文件和emf文件。IPictureElement是两个子类都实现的接口,使用它可以用于操作一个图片元素。

  评论这张
 
阅读(278)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017