You can use an html color or ‘Hex’ value too
example
[Serializable]
public struct MyFunkyColors
{
private byte m_red;
private byte m_green;
private byte m_blue;
public MyFunkyColors(Byte red, Byte green, Byte blue)
{
this.m_red = red;
this.m_green = green;
this.m_blue = blue;
}
public MyFunkyColors(Autodesk.AutoCAD.Colors.Color color)
{
this.m_red = color.ColorValue.R;
this.m_green = color.ColorValue.G;
this.m_blue = color.ColorValue.B;
}
public MyFunkyColors(String htmlcolor)
{
System.Drawing.Color color = System.Drawing.ColorTranslator.FromHtml(htmlcolor);
this.m_red = color.R;
this.m_green = color.G;
this.m_blue = color.B;
}
public void Invert()
{
m_red = (byte)(255 - m_red);
m_green = (byte)(255 - m_green);
m_blue = (byte)(255 - m_blue);
}
public byte R
{ get { return m_red; } }
public byte G
{ get { return m_green; } }
public byte B
{ get { return m_blue; } }
public string HTMLColor
{ get { return "#"+ m_red.ToString("X") + m_green.ToString("X") + m_blue.ToString("X"); } }
public Autodesk.AutoCAD.Colors.Color Color
{ get { return Autodesk.AutoCAD.Colors.Color.FromRgb(m_red, m_green, m_blue); } }
public static Autodesk.AutoCAD.Colors.Color Snow
{ get { return Autodesk.AutoCAD.Colors.Color.FromRgb(255, 250, 250); } }
public static Autodesk.AutoCAD.Colors.Color LemonChiffon
{ get { return Autodesk.AutoCAD.Colors.Color.FromRgb(255, 250, 205); } }
public static Autodesk.AutoCAD.Colors.Color DarkOrchid
{ get { return Autodesk.AutoCAD.Colors.Color.FromRgb(153, 50, 204); } }
public override string ToString()
{
StringBuilder sb = new StringBuilder();
sb.Append("(");
sb.Append(m_red.ToString());
sb.Append(",");
sb.Append(m_green.ToString());
sb.Append(",");
sb.Append(m_blue.ToString());
sb.Append(")");
return sb.ToString();
}
public override int GetHashCode()
{
return base.GetHashCode();
}
public override bool Equals(object obj)
{
if (obj is MyFunkyColors)
{
MyFunkyColors o = (MyFunkyColors)obj;
return ((o.R == m_red) && (o.G == m_green) && (o.B == m_blue));
}
else
{
return false;
}
}
//
}
public static void doit()
{
LayerTableRecord lt1 = new LayerTableRecord();
lt1.Color = MyFunkyColors.LemonChiffon;
//...
//or
MyFunkyColors somecolor = new MyFunkyColors(250,250,250);
LayerTableRecord lt2 = new LayerTableRecord();
lt2.Color = somecolor.Color;
//or
MyFunkyColors newcolor = new MyFunkyColors("#FFFFEE");
LayerTableRecord lt3 = new LayerTableRecord();
lt3.Color = newcolor.Color;
}