与栅格渲染相关的接口关系

xiaoxiao2021-02-28  161

IColorRampIRasterRendererIRasterRendererColorRampIRasterRender的主要实现类 RasterRGBRendererRasterStretchColorRampRendererRasterClassifyColorRampRenderer

IColorRamp

功能概述:一条具体色带的操作接口,相当于一个颜色的集合主要功能: 依据指定颜色个数创建或重建色带: IColorRamp.size =12ColorRamp.CreatRamp(out bool) 注意事项: IColorRamp仅有两个具体的实现类即 AlgorithmicColorRamp和MultiPartColorRampIColorRamp本质上是一个颜色集合,只有颜色序号和颜色值,因此和具体渲染的对应数值无关补充说明 AlgorithmicColorRamp:通过设置起讫颜色和颜色个数,自动生成一个渐变色带,是最常用的色带构建对象MultiPartColorRamp:通过设置间断点值和颜色,自动生成一个跳跃颜色色带

IRasterRenderer

功能概述:栅格渲染器的统一接口主要功能: 通过Raster属性,与需要渲染的栅格进行绑定通过Update()方法,提交所有和渲染器有关的参数更新注意事项: IRasterRender不提供任何具体类型栅格渲染器的参数修改访问,因此必须将其转化为特定类型的渲染器才可以进行参数修改IRasterRender的任何子类型均不能绑定栅格,因此,必须转换成IRaster进行绑定一旦执行了渲染器的参数修改,一定要进行UpDate提交

IRasterRendererColorRamp

功能概述:设置或获取指定栅格渲染器的色带主要功能:使用了色带渲染效果的IRasterRenderer具体实现类,提供一个统一的

IRasterRender的主要实现类

RasterRGBRenderer

功能概述:实现多波段栅格的彩色合成主要功能: 通过UseRed/Blue/GreenBand属性,设置是否需要启用红绿蓝的渲染通过Red/Blue/GreenBandIndex属性,设置红绿蓝的渲染效果的对应波段注意事项: 对于单波段影像,波段数只有1,因此只能选择要不要叠加红绿蓝波段对于多波段影像,获取波段集合IBandColloction对象时,一定要注意是从IRaster还是IRasterDataset转化而来的

RasterStretchColorRampRenderer

功能概述:实现影像的灰度色带拉伸渲染,可以理解成IColorRamp所对应的渲染器主要功能: 设置渲染器所使用的色带 设置渲染器的标签值转为IRasterStretch接口,实现灰度拉伸方式、背景色、反转色带、拉伸参数的设置转为IRasterStretchMinMax接口,实现最值拉伸或者百分比截断拉伸的参数设置转为IRasterStretch3接口,实现线性拉伸时Gamma的参数的设置转为IRasterRendererColorRamp对象,进而间接的获取或设置色带,作用与1同效注意事项: RasterStretchColorRampRenderer中色带的颜色取值只和影像的灰度值有关

RasterClassifyColorRampRenderer

主要功能:实现影像的某一属性值的分类渲染主要功能: 设置颜色的分类个数以ISymbol对象方式,设置每一个分类的颜色设置每一个分类的标签值转为IRasterRendererColorRamp对象,进而直接通过色带对分类颜色进行设置注意事项: 某一属性值包含影像的灰度值,同时也是默认的分类字段这里默认采用“个数”分类法对属性值进行分类如果对分类结果不满意,应该通过重分类获取新的分类断点实际的分类执行过程,应该是在将其转化为IRasterRender对象并进行Update提交时执行的 ==有待考证==
转载请注明原文地址: https://www.6miu.com/read-28249.html

最新回复(0)