Previous: 色を扱うための構造体
Up: 色を扱うための構造体
Next: カラーマップとピクセル番号
Previous Page: 色を扱うための構造体
Next Page: カラーマップとピクセル番号
最初に XColor構造体を説明しましょう。
XColor構造体はインクルード・ファイル X11/Xlib.h の中で、
次のようなメンバーからなるデータの集まりとして定義されています。
typedef struct _XColor {
unsigned long pixel;
unsigned short red, green, blue;
char flag;
char pad;
} XColor;
このうち、特に重要なメンバーがカラーマップの登録番号を記憶する pixelと
色の3成分の値 red, green, blue です。
( flag は3原色いずれかの成分を一時的にマスクしたりするのに使用します。
今のところは操作する必要はありません。
pad は構造体のサイズを調整する隙間で特に用途は決っていません。)
XColor構造体の使い方を調べてみましょう。
XColor構造体のデータとして、例えば iro という変数を使いたいとします。
それには次のように宣言します。
XColor iro;
これで色のデータを1色分記憶する領域がメモリー上に確保されたことになります。
この構造体のメンバーにデータの値を入れるには次のようにします。
iro.red = 20000;
これで色の3原色のうちの赤色成分の値を与えることができます。
他の成分についても同様です。
3つの値をうまく調整すれば、絵の具の色を混ぜて作るのと似た考え方で
色を作り出すことができます。
(それぞれの成分は short型ですから 0 - 65535の範囲の値で指定します。)