ArcGIS Engine开发教程之图层符号化(四)——符号化之Renderer( 渲染)体系
来源:互联网 发布:s1810打印机网络设置 编辑:程序博客网 时间:2024/04/28 02:07
ArcGIS Engine9.3对GIS数据的符号化分为矢量数据渲染和栅格数据渲染两大类。接下来分别介绍FeatureRender和RasterRender。
1.FeatureRender对象
FeatureRenderer是一个抽象类,它有15个子类负责进行不同类型的着色运算。它们都实现了IFeatureRenderer接口,这个接口定义了进行要素图层符号化的公共属性和方法。
可以通过IGeoFeatureLayer::Renderer属性获得一个要素图层的符号化对象
表四
要素符号化类型描述
SimpleRender
简单符号化
UniqueValueRender
唯一值符号化
BiUniqueValueRender
双变量唯一值符号化
ChartRender
图表符号化
ClassBreaksRenderer
分类等级符号化
DotDensityRenderer
点密度符号化
ProportionalSymbolRenderer
根据属性值设置符号大小进行符号化
ScaleDependentRenderer
依比例尺符号化
RepresentationRenderer
制图表达符号化
CoTrackSymbologyRenderer(TrackingAnalyst)
轨迹符号化(应用于TrackingAnaylyst扩展模块)
EnhancedInfoRenderder(TrackingAnalyst)
增强信息符号化(应用于TrackingAnaylyst扩展模块)
UniqueValueTextRenderer(TrackingAnalyst)
唯一值文本符号化(应用于TrackingAnaylyst扩展模块)
NAStopRenderer(NetworkAnalyst)
停止符号化(应用于网络分析扩展模块)
FeatureVertexRenderer(SurveyExt)
要素定点符号化(应用于测量分析扩展模块)
SharedEdgeRenderer(EditorExt)
用于绘制拓扑元素 常用的要素符号化类型主要有以下6种类型,如图13所示:
图13
由于篇幅有限不再对每一种符号化类型的使用进行讲解,在后边的实例中将为读者演示如何进行唯一值符号化。2.RasterRender对象
RasterRender是一个抽象类,它有15个子类负责进行不同类型的着色运算。它们都实现了IRasterRender接口,这个接口定义了栅格图层符号化的公共属性和方法。可以通过IRasterLayer::Renderer属性获得一个栅格图层的符号化对象。
要素符号化类型
描述
RasterRGBRenderer
栅格RGB符号化
RasterUniqueValueRenderer
唯一值符号化
RasterColormapRenderer
双变量唯一值符号化
RasterClassifyColorRampRenderer
图表符号化
RasterStretchColorRampRenderer
分类等级符号化
RasterDiscreteColorRenderer
点密度 符号化
栅格符号化类型结构图如图14所示:
图14
以下代码片段是对一个RasterLayer进行RasterStretchColorRampRenderer符号化操作:///<summary>
/// StretchColorRamp符号化RasterLayer
///</summary>
///<param name="pRasterLayer">RasterLayer</param>
publicvoid SetStretchColorRampRenderer(IRasterLayer pRasterLayer)
{
try
{
//创建RasterStretchColorRampRendererClass对象
IRasterStretchColorRampRenderer pRStretchRender=newRasterStretchColorRampRendererClass();
//QI到IRasterRenderer
IRasterRenderer pRasterRender=pRStretchRenderasIRasterRenderer;
pRasterRender.Raster = pRasterLayer asIRaster;
pRasterRender.Update();
//创建两个起始颜色
IRgbColor pFromRgbColor =newRgbColorClass();
pFromRgbColor.Red = 255;
IRgbColor pToRgbColor =newRgbColorClass();
pToRgbColor.Blue = 255;
//创建起止颜色带
IAlgorithmicColorRamp pAlgorithmicColorRamp =newAlgorithmicColorRampClass();
pAlgorithmicColorRamp.Size = 255;
pAlgorithmicColorRamp.FromColor = pFromRgbColor asIColor;
pAlgorithmicColorRamp.ToColor = pToRgbColor asIColor;
bool btrue=true;
pAlgorithmicColorRamp.CreateRamp(out btrue);
//选择拉伸颜色带符号化的波段
pRStretchRender.BandIndex = 0;
//设置拉伸颜色带符号化所采用的颜色带
pRStretchRender.ColorRamp = pAlgorithmicColorRamp asIColorRamp;
pRasterRender.Update();
//符号化RasterLayer
pRasterLayer.Renderer = pRasterRender;
}}
catch(Exception Err)
{
MessageBox.Show(Err.Message,"提示",MessageBoxButtons.OK,MessageBoxIcon.Information);
}
- ArcGIS Engine开发教程之图层符号化(四)——符号化之Renderer( 渲染)体系
- ArcGIS Engine开发教程之图层符号化(四)——符号化之Renderer( 渲染)体系
- ArcGIS Engine开发教程之图层符号化(四)——符号化之Renderer( 渲染)体系
- ArcGIS Engine开发教程之图层符号化之Renderer( 渲染)体系
- ArcGIS Engine开发教程之图层符号化(二)——符号化Color(颜色)体系
- ArcGIS Engine开发教程之图层符号化(三)——符号化Symbol(符号)体系
- ArcGIS Engine开发教程之图层符号化(二)——符号化Color(颜色)体系
- ArcGIS Engine开发教程之图层符号化(三)——符号化Symbol(符号)体系
- ArcGIS Engine开发教程之图层符号化(六)——设计GIS系统符号化模块
- ArcGIS Engine开发教程之图层符号化(六)——设计GIS系统符号化模块
- ArcGIS Engine开发教程之图层符号化(一)——概述
- ArcGIS Engine开发教程之图层符号化(一)——概述
- ArcGIS Engine开发教程之图层符号化(五)——利用ESRI自带的符号库进行唯一值符号化
- ArcGIS Engine开发教程之图层符号化(五)——利用ESRI自带的符号库进行唯一值符号化
- ArcGIS Engine— 学习图层符号化
- ArcGIS Engine基础开发教程(4)— 学习图层符号化
- ArcGIS Engine开发---图层符号化
- ArcGIS制图之符号化(上)—…
- android TabHost 使用
- 命令行运行PHP文件的用法(PHP超大文件的解析技巧)
- PL/SQL 导出表
- Hibernate使用SchemaExport和AnnotationConfiguration生成表结构
- 对RUBY + ACTIVERECORD +MYSQL 的一点郁闷解决思路
- ArcGIS Engine开发教程之图层符号化(四)——符号化之Renderer( 渲染)体系
- Javascript生成颜色选择控件
- 多大的文件开始不用send_file,该怎么处理
- 每天学习一点点之单链表逆序
- 休息的艺术
- rails的rake出错,认不到RDoc,该如何处理
- 基于Hadoop的社会网络分析工具包X-Rime开源
- 电脑搜索功能不好用的解决方法
- 如何让你暗恋的人来追你