HSV与RGB是ArcGIS中用的最多的两种色彩模型,这两种色彩模型基本信息就不做过多介绍了。下面是互相转换的代码
1、HSV转RGB
Arcgis Engine中可以将 Symbol中的Color先转为 IHsvColor这个接口,在这个接口中获取H、S、V三个值,我这里方便计算,将S、V值除以了100。
IHsvColor pHsvColor = pSetFillSymbol.Color as IHsvColor;
if(pHsvColor!=null&&pHsvColor.NullColor==false)
{
int H = pHsvColor.Hue;
double S = Convert.ToDouble(pHsvColor.Saturation)/100;
double V = Convert.ToDouble(pHsvColor.Value) / 100;
Color pfill_Color = HSVToRGB(H,S,V);
this.cPEFill.Color = pfill_Color;
}
/// 将HSV色彩模型转换为RGB模型
/// </summary>
/// <param name="H">色调 0-360</param>
/// <param name="S">饱和度 0-1</param>
/// <param