欢迎来到天天文库
浏览记录
ID:59506455
大小:3.32 MB
页数:147页
时间:2020-09-09
《第四章-符号化元素和图层.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第四章符号化元素和图层总体介绍符号化对象(symbologyobjects)符号对象Symbolobjects颜色对象Colorobjects颜色梯度对象Colorramps为地图添加一个简单的图形(graphics)使用特征渲染对象修改图层显示方式(FeatureRenderers)课程预览一、添加色彩——颜色对象颜色(Color)是现实世界中最普遍的事物属性,为了满足不同行业的需要,人们使用了不同的颜色模型来模拟现实的颜色。(一)颜色模型颜色的模型有很多种,如RGB颜色模型、CMYK颜色模型(主要用于印刷中)、HSV颜色模型(色调
2、、饱和度和Value值)、GrayColor(灰度颜色)。以下五种可创建的对象RgbColor(红、绿、蓝)CmykColor(青、洋红、黄、黑)HsvColor(色调、饱和度、值)HlsColor(色调、亮度、饱和度)GrayColor(灰度)用来定义颜色对象的属性Red,Green,Bluevalues(0–255)灰度(0=white–255=black)Cyan,Magenta,Yellow,Black使用Color对象来访问一个Symbol对象的Color属性1、RGB模型可见光谱中的大部分,都可以用各种比例和强度的红、绿、
3、蓝(RGB)三种色光混合而成。RGB模型的主要属性也是确定Red、Blue和Green的值。IColor::RGB属性object.RGB=[value]pColor.RGB=RGB(0,0,0)2、CMYK模型CMYK模型以打印在纸上的油墨的光线吸收特性为基础。当白光照射到半透明油墨上时,某些可见光波长被吸收,而其他波长则被反射回眼睛。理论上,纯青色(C)、洋红色(M)和黄色(Y)色素在合成后可以吸收所有光线并产生黑色。K黑色油墨3、HSV模型HSV模型对应于圆柱坐标系的一个圆锥形子集。圆锥的顶面对应于V=1,代表的颜色较亮。色彩H
4、由绕V轴的旋转角给定,红色对应于角度0°,绿色对应于角度120°,蓝色对应于角度240°。饱和度S取值从0到1,由圆心向圆周过度。4、Gray模型灰度模型是没有色彩的,灰度图像由8位信息组成,并使用256级的灰色来模拟颜色的层次。灰度图像的每个像素有一个0(黑色)到255(白色)之间的亮度值。(二)Color对象Color对象是一个抽象类,它有5个颜色子类,它们可以使用这个接口定义的方法设置颜色对象的基本属性。对于一种特定的颜色而言,它在不同的颜色模型中的表示方法是不一样的,因此使用颜色对象时,需要使用IColor的子接口产生具体对象
5、。(三)颜色对话框除了使用编程的方法得到颜色对象外,用户也可以使用AO中的颜色对话框来获取所需要的颜色,而且使用对话框更直观。AO中提供了几种颜色对话框供程序员使用。1、颜色板对象Colorpalette该对象一共排列了120种颜色供用户使用。Colorpalette类实现了两个接口:IColorPalette和ICustomColorPalette。2、颜色选择器对象颜色选择器(ColorSelector)对象提供了另一种选择颜色的方法,不过这种选择方式在精确度更高。(三)ColorRamp对象制作地图专题图的过程中系统需要的颜色常
6、常不是一种,而是随机或有序产生的一个颜色带。ColorRamp类的对象可以产生颜色带,这个类实现了IColorRamp,后者定义了一系列颜色带的公共方法,如Size(产生多少种颜色),Color(颜色带IEnumColor)。颜色梯度对象ColorRamps四种可以创建的对象AlgorithmicColorRamp(算法颜色梯度)RandomColorRamp(随机颜色梯度)PresetColorRamp(预定义颜色梯度)MultiPartColorRamp(多部分的颜色梯度)1、AlgorithmicColorRamp颜色带Algo
7、rithmicColorRamp是通过起止颜色来确定多个在这两个颜色之间的色带,因此它产生的颜色带还是有章可循的。该类实现了两个接口:IColorRamp和IAlgorithmicColorRamp,两个接口之间是接口继承关系。IAlgorithmicColorRamppRampColor;'产生一个AlgorithmicColorRamp对象pRampColor=NewAlgorithmicColorRampClass();'传入起始颜色pRampColor.FromColor=FromColor;'传入终止颜色pRampColor
8、.ToColor=ToColor;pRampColor.size=Count;boolok=true;pRampColor.CreateRamp(outok);'返回的是一个颜色枚举型对象returnpRampColor
此文档下载收益归作者所有