/// <summary> /// 为特定的三维图形类型创建颜色映射 /// </summary> /// <param name="cs"></param> /// <param name="pt"></param> /// <param name="zmin"></param> /// <param name="zmax"></param> /// <returns></returns> private Color AddColor(ChartStyle cs, Point3 pt, float zmin, float zmax) { int colorLength = CMap.GetLength(0); int cindex = (int)Math.Round((colorLength * (pt.Z - zmin) + (zmax - pt.Z)) / (zmax - zmin)); if (cindex < 1) { cindex = 1; } if (cindex > colorLength) { cindex = colorLength; } Color color = Color.FromArgb(CMap[cindex - 1, 0], CMap[cindex - 1, 1], CMap[cindex - 1, 2], CMap[cindex - 1, 3]); return(color); }