//============================================================ // <T>获得颜色字符串。</T> // // @param color 浮点颜色 // @reutrn 字符串 //============================================================ public static string ToColorString(SFloatColor4 color) { Color result = Color.FromArgb((int)(color.A * 255) > 255 ? 255 : (int)(color.A * 255), (int)(color.R * 255), (int)(color.G * 255), (int)(color.B * 255)); string text = Convert.ToString(result.ToArgb(), 16); return(text.ToUpper()); }
//============================================================ // <T>获得浮点颜色。</T> // // @param color 颜色 // @reutrn 浮点颜色 //============================================================ public static SFloatColor4 ToFloatColor(Color color) { SFloatColor4 result = new SFloatColor4(); result.R = (float)(color.R / 255); result.G = (float)(color.G / 255); result.B = (float)(color.B / 255); result.A = (float)(color.A / 255); return(result); }
//============================================================ // <T>加载浮点颜色。</T> //============================================================ public void LoadColor(SFloatColor4 color) { _color.Assign(color); // 获得透明度 int alpha = (int)(color.A * 100); if (alpha < 0) { alpha = 0; } else if (alpha > 100) { alpha = 100; } // 设置内容 qcpColorRgb.SelectColorText = color.ToHexString3(); tkbColorAlpha.Value = alpha; txtColorAlpha.Text = alpha.ToString(); }
//============================================================ // 清除颜色 //============================================================ public void Clear(SFloatColor4 color) { _device.NativeDevice.ClearRenderTargetView(_nativeTarget, new Color4(color.A, color.R, color.G, color.B)); }
//============================================================ // <T>根据浮点颜色获得颜色。</T> // // @param color 浮点颜色 // @reutrn 颜色 //============================================================ public static Color FromFloatColor(SFloatColor4 color) { return(Color.FromArgb((int)(color.A * 255) > 255 ? 255 : (int)(color.A * 255), (int)(color.R * 255), (int)(color.G * 255), (int)(color.B * 255))); }