ae地图的显示

上传人:xh****66 文档编号:61788596 上传时间:2018-12-12 格式:PPT 页数:46 大小:2.24MB
返回 下载 相关 举报
ae地图的显示_第1页
第1页 / 共46页
ae地图的显示_第2页
第2页 / 共46页
ae地图的显示_第3页
第3页 / 共46页
ae地图的显示_第4页
第4页 / 共46页
ae地图的显示_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《ae地图的显示》由会员分享,可在线阅读,更多相关《ae地图的显示(46页珍藏版)》请在金锄头文库上搜索。

1、AE开发之地图的显示,如何使用颜色对象 如何使用符号对象 如何对要素进行着色以生成不同类型的专题图,1.添加颜色颜色对象,ArcGIS提供的颜色模型有: RGB模型 CMYK模型 HSV模型 Gray模型 HLS模型,Hue-色调 Saturation-饱和度 Value-明度,1.1 Color对象,Color对象是一个抽象类,有5个颜色子类 CMYKColor、RGBColor、HSVColor、HLSColor、GrayColor,1.2 ColorRamp对象,ColorRamp类是一个抽象类,它包括4个子类分别是: RandomColorRamp(随机颜色带) PresetColor

2、Ramp(预设颜色带) AlgorithmicColorRamp(起止颜色带) MultiPartColorRamp(叠加颜色带),AlgorithmicColorRamp颜色带: 通过起止颜色来确定多个在这两个颜色之间的色带。AlgorithmicColorRamp类实现了两个接口:IColorRamp和IAlgorithmicColorRamp,两个接口之间是接口继承关系,后者包含了前者所有的方法和属性。 IRandomColorRamp颜色带: 在Unique Break着色中系统使用的最多的是随机颜色。RandomColorRamp需要设定一个HSV颜色模型的范围,颜色将在这个范围内随

3、机出现。,2. 图形的外观Symbol对象,ArcGIS Engine9.3为开发人员提供了32种符号 三大类符号来绘制地理要素的几何图形: MarkerSymbol、LineSymbol与FillSymbol 此外还有两种特殊类型的符号: TextSymbol用于文字标注 3D Chart符号用于显示饼图等三维对象,2.1 MarkerSymbol对象,MarkerSymbol对象是用于修饰点对象的符号 它拥有12个子类,分别产生不同类型的点符号 所有的MarkerSymbol类都实现了IMarkerSymbol接口 这个接口定义了标记符号的公共方法和属性如角度、颜色、大小和X,Y偏移量等。

4、,SimpleMarkerSymbol 简单类型的点状符号 五种类型:Square、Cross、Circle、X、Diamond,ArrowMarkerSymbol 箭头形式的符号 Length属性:箭头的顶点到底边的距离 Width属性:箭头底边的宽度 Style属性:箭头符号样式,esriAMSPlain,CharacterMarkerSymbol 字符形式的符号 CharacterIndex属性:通过ASC码确定字符,PictureMarkerSymbol 以图片为背景的符号 PictureMarkerSymbol:CreateMarkerSymbolFromFile方法从磁盘上获取一张

5、位图 设置对象的Picture属性来将一张图片设置为点符号,MultiLayerMarkerSymbol 多个符号叠加生成新的符号,2.2 LineSymbol对象,LineSymbol对象是用于修饰线型几何对象的符号,它拥有八个子类,其中不同的子类可以产生不同类型的线符号。 ILineSymbol接口定义了两个公共属性:Color和Width,SimpleLineSymbol简单线符号 主要属性是Style,用来确定线的形式,其拥有的线类型有7种。,CartographicLineSymbol制图线符号:ICartographicLineSymbol接口主要用于设置线符号的节点属性,Cap属

6、性用于设置线要素首尾端点的形状;Join属性用于设置线要素转折处的样式。,MultiLayerLineSymbol多图层线符号:使用重叠符号的方法生成新的线符号。,PictureLineSymbol图片线符号:可以将一条线对象通过一张位图图片表现出来,当系统需要设置非常特殊的线符号时可以使用这个对象来完成。,2.3 FillSymbol对象,SimpleFillSymbol简单填充符号 LineFillSymbol线填充符号,MarkerFillSymbol点填充符号,GradientFillSymbol渐变颜色填充符号,PictureFillSymbol图片填充符号,MultilayerFi

7、llSymbol,DotDensityFillSymbol点密度填充符号,2.4 TextSymbol对象,ITextSymbol接口是定义文本字符样式的主要接口,它定义的ITextSymbol:Font属性是产生一个TextSymbol符号的关键。可以使用IFontDisp接口来设置字体的大小和是否是粗体、倾斜等属性。 使用ITextSymbol接口还可以定义TextSymbol对象的颜色、角度、水平排列方式、垂直排列方式和文本等内容。,2.5 3DChartSymbol对象,3DChartSymbol是一个抽象类,它拥有三个子类: BarChart PieChart StackedChar

8、t 它本质上是一种Marker符号,一般用于ChartRenderer对象的着色,而且这个着色方法常常是基于多个属性的。,BarChartSymbol是最常用的三维着色符号,它使用不同类型的柱子来代表一个要素类中不同的属性,而柱子的高度取决于属性值的大小。 PieChartSymbol符号进行着色的方法是使用一个饼图来显示不同要素类中的不同属性,不同的属性按照它们的数值大小占有一个饼图中的不同比例的扇形区域。 StackedChartSymbol符号使用的柱是堆垒而成的。,3 使用ServerStyle,ArcGIS Desktop中的Style符号库文件,在ArcGIS Engine开发中对

9、应的是ServerStyle符号库,其体系如下图所示:,用于获取ServerStyle符号库中的符号主要涉及到以下接口如表所示:,如何获取到一个符号库中符号?,SymbologyControl控件 用来显示ServerStyle符号库中的符号样式,可以选择在该控件上选择一个符号用来符号化一个图层或者作为一个Element的符号。 使用SymbologyControl可以在设计的模式下在其属性页中加载ServerStyle符号库文件,同样也可以使用的LoadStyleFile和RemoveFile方法加载和移除Serverstyle符号库文件。,4 Renderer(渲染)体系,矢量数据渲染 F

10、eatureRenderer是一个抽象类,它有15个子类负责进行不同类型的着色运算。它们都实现了IFeatureRenderer接口,这个接口定义了进行要素图层符号化的公共属性和方法。可以通过IGeoFeatureLayer:Renderer属性获得一个要素图层的符号化对象,栅格数据渲染 RasterRender是一个抽象类,它有6个子类负责进行不同类型的着色运算。它们都实现了IRasterRender接口,这个接口定义了栅格图层符号化的公共属性和方法。可以通过IRasterLayer:Renderer属性获得一个栅格图层的符号化对象。,5 制作专题图,SimpleRenderer着色法 此方

11、式最为简单,不涉及对要素图层的数据处理。 使用这种着色方法需要产生一个SimpleRenderer对象,然后将它的Symbol进行设置后赋值给IGeoFeaturelayer:Renderer即可。 它的类还实现了ITransparencyRenderer接口,后者可以依据要素的某个数值字段的值来设置要素的显示透明度。,ClassBreakRenderer着色法 分级着色法需要获取要素图层的要素类中某个数值字段的值,根据用户的要求将这些值分为几个级别,由于每个级别的Symbol不同而显示出不同的外观。,UniqueValueRenderer着色法 这种方法产生的颜色数量是最多的,它依据要素图层

12、的要素类中某个数值字段的值的不同而给每个要素一个单独的颜色。 实现思路:寻找出要素图层中要素类的所有要素,然后使用IUniqueValueRenderer:AddValue方法将单个要素的某个字段值和与之相匹配的着色符号加入UniqueValueRenderer对象,再将新建的着色对象赋给要素图层的Renderer属性,刷新要素图层即可。,ProportionalSymbolRenderer着色法 梯度着色法依据要素图层的要素类中某个字段的数值而生成大小不一的圆形符号进行着色。 通过IProportionalSymbolRenderer接口定义使用梯度着色法的方法和属性,这种着色方式需要知道最

13、大和最小的圆点各自代表的字段值、着色基于的字段和着色点使用的符号。,ChartRenderer着色法 ChartRenderer对象使用饼图(PieChart)或柱状图(BarChart、StackedChart)来比较一个要素的多个属性。,IChartRenderer接口定义了ChartSymbol方法,用于设置着色对象的着色符号、Lable属性等。 这种着色方法需要获得被着色图层中的单个要素的一个或多个字段,这个任务需要使用RendererField对象来完成。实现了IRendererFields接口,通过使用AddField方法来添加进行比较的字段。,DotDensityRenderer着色法 使用DotDensityFillSymbol符号来对一个Polygon类型的要素图层进行着色。这种着色法根据随机分布的点的密度来表现要素的某个属性值的大小,而这些点的多少是由DotValue值来决定的。 IDotDensityRenderer接口定义了使用点密度着色的方法和属性。IDotDensityRenderer:DotDensitySymbol用来确定着色的点符号。IDotDensityRenderer:CreateLegend方法用于产生图例。,谢谢大家!,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 科普知识

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号