Jump to content

Recommended Posts

Salut,

 

AcColorSettings est une structure ObjectARX/C++, avec .NET, on accède à l'équivalent de la plupart de ces propriétés via la classe AcadPreferencesDisplay de l'interface COM.

 

Ces propriétés utilise ce qu'on appelle les couleurs Ole (Ole colors) parce qu'utilisées par les logiciels Microsofts (Excel entre autre). les couleurs sont codées sous la forme d'un entier combinant 3 octets pour le rouge le vert et le bleu mais contrairement à ce qui se fait habituellement avec les couleurs RGB, le premier octet est affecté au rouge et le dernier au bleu (BGR).

 

Les méthodes suivantes permettent de convertir les couleurs AutoCAD RGB en couleur Ole et inversement.

 

public static Color FromOleColor(int oleColor) =>
   Color.FromRgb(
       (byte)(oleColor << 24 >> 24),
       (byte)(oleColor << 16 >> 24),
       (byte)(oleColor << 8 >> 24));

public static int ToOleColor(Color color) =>
   (color.Blue << 16) | (color.Green << 8) | color.Red;

Gilles Chanteau - gileCAD -
Développements sur mesure pour AutoCAD
ADSK_Expert_Elite_Icon_S_Color_Blk_125.png

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...