カスタムカラー#
導入#
color クラスは、EXP Brain Screen 上で図形を描画したりテキストを表示したりするための色を定義および変更するために使用されます。色は、RGB 値、16 進数カラーコード、HSV 値、または定義済みのカラー定数を使用して作成できます。
クラスコンストラクタ#
1 — 色が割り当てられていない
colorオブジェクトを作成します。color();
2 — 16進数または整数値から、
colorオブジェクトを作成します。color( int value );
3 — RGB値から
colorオブジェクトを作成します。color( uint8_t r, uint8_t g, uint8_t b );
クラスデストラクタ#
color オブジェクトを破棄し、関連するリソースを解放します。
~color();
パラメータ#
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
色の値は、16進数のRGB整数(例: |
|
|
赤色成分を表す0から255までの整数。 |
|
|
緑色の成分を表す0から255までの整数。 |
|
|
青色の成分を表す、0から255までの整数。 |
注記#
The following predefined color constants are supported:
blackbluecyangreenorangepurpleredtransparentvioletwhiteyellow
例#
// Create the color yellow using a hexadecimal value
color myYellow = color(0xFFF700);
// Create a color using RGB values
color myBlue = color(0, 100, 255);
// Create a color using a predefined constant
color myRed = color(red);
メンバーの機能#
color クラスには、以下のメンバ関数が含まれています。
color メンバー関数を呼び出す前に、以下に示すように color インスタンスを作成する必要があります。
// Create a color using RGB values
color brainColor = color(255, 128, 0);
rgb#
既存の color オブジェクトの色をRGB値を使用して更新します。
1 — パックされた RGB 値でカラー オブジェクトを更新します。
uint32_t rgb( uint32_t value );
Parameters2 — 色オブジェクトを個別の RGB 値で更新します。
uint32_t rgb( uint8_t r, uint8_t g, uint8_t b );
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
3つの色成分すべてを含むパックされたRGB値。 |
|
|
色の赤色成分を表す、0から255までの整数。 |
|
|
色の緑色成分を表す、0から255までの整数。 |
|
|
色の青色成分を表す、0から255までの整数。 |
更新された色のパックされたRGB値を表す uint32_t を返します。
// Draw a rectangle with a custom teal color
color brainColor = color(50, 200, 180);
Brain.Screen.setFillColor(brainColor);
Brain.Screen.drawRectangle(0, 0, 480, 120);
// Change the color to magenta for a second rectangle
brainColor.rgb(170, 40, 150);
Brain.Screen.setFillColor(brainColor);
Brain.Screen.drawRectangle(0, 120, 480, 120);
// Draw a rectangle with a custom teal color
color brainColor = color(50, 200, 180);
Brain.Screen.setFillColor(brainColor);
Brain.Screen.drawRectangle(0, 0, 480, 120);
// Change the color to magenta for a second rectangle
brainColor.rgb(0xAA2896);
Brain.Screen.setFillColor(brainColor);
Brain.Screen.drawRectangle(0, 120, 480, 120);
hsv#
既存の色 color オブジェクトの色を、色相、彩度、明度の値を使用して更新します。
color& hsv(
uint32_t hue,
double sat,
double value );
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
色の色相を表す、0から360までの整数。 |
|
|
色の彩度を表す、0.0から1.0までのdouble型の値。 |
|
|
色の明るさを表す、0.0から1.0までのdouble型の値。 |
更新された color オブジェクトへの参照を返します。
// Draw a rectangle with a custom teal color
color brainColor = color(50, 200, 180);
Brain.Screen.setFillColor(brainColor);
Brain.Screen.drawRectangle(0, 0, 480, 120);
// Change the color to magenta for a second rectangle
brainColor.hsv(300, 0.75, 0.78);
Brain.Screen.setFillColor(brainColor);
Brain.Screen.drawRectangle(0, 120, 480, 120);
web#
既存の color オブジェクトの色を、16進数またはWebカラー値を使用して更新します。
color& web(
const char* color );
パラメータ |
タイプ |
説明 |
|---|---|---|
|
|
特定の色を定義する16進数またはWebカラー値(例: |
更新された color オブジェクトへの参照を返します。
// Draw a rectangle with a custom teal color
color brainColor = color(50, 200, 180);
Brain.Screen.setFillColor(brainColor);
Brain.Screen.drawRectangle(0, 0, 480, 120);
// Change the color to magenta for a second rectangle
brainColor.web("#AA2896");
Brain.Screen.setFillColor(brainColor);
Brain.Screen.drawRectangle(0, 120, 480, 120);