Vlastní barvy#
Zavedení#
Třída color se používá k definování a úpravě barev pro kreslení tvarů a zobrazování textu na obrazovce V5 Brain. Barvy lze vytvářet pomocí hodnot RGB, hexadecimálních barevných kódů, hodnot HSV nebo předdefinovaných barevných konstant.
Konstruktory tříd#
1 — Vytvoří objekt s
colorbarvou bez přiřazené barvy.color();
2 — Vytvoří objekt s
colorbarvou z hexadecimální nebo celočíselné hodnoty.color( int value );
3 — Vytvoří objekt s
colorbarvou z hodnot RGB.color( uint8_t r, uint8_t g, uint8_t b );
Destruktor tříd#
Zničí objekt color a uvolní související zdroje.
~color();
Parametry#
Parametr |
Typ |
Popis |
|---|---|---|
|
|
Hodnota barvy, která může být buď hexadecimální celé číslo RGB (například |
|
|
Celé číslo od 0 do 255 představující červenou složku. |
|
|
Celé číslo od 0 do 255 představující zelenou složku. |
|
|
Celé číslo od 0 do 255 představující modrou složku. |
Poznámky#
Jsou podporovány následující předdefinované barevné konstanty:
blackbluecyangreenorangepurpleredtransparentvioletwhiteyellow
Příklad#
// 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);
Členské funkce#
Třída color obsahuje následující členské funkce:
rgb— Aktualizuje barvu pomocí hodnot RGB.hsv— Aktualizuje barvu pomocí hodnot HSV.web— Aktualizuje barvu pomocí hexadecimálního řetězce barvy typu web.
Před voláním jakékoli členské funkce color musí být vytvořena instance color , jak je znázorněno níže:
// Create a color using RGB values
color brainColor = color(255, 128, 0);
rgb#
Aktualizuje barvu existujícího objektu s color barvou pomocí hodnot RGB.
1 — Aktualizuje barevný objekt zabalenou hodnotou RGB.
uint32_t rgb( uint32_t value );
Parameters2 — Aktualizuje barevný objekt samostatnými hodnotami RGB.
uint32_t rgb( uint8_t r, uint8_t g, uint8_t b );
Parametr |
Typ |
Popis |
|---|---|---|
|
|
Zabalená hodnota RGB obsahující všechny tři barevné složky. |
|
|
Celé číslo od 0 do 255 představující červenou složku barvy. |
|
|
Celé číslo od 0 do 255 představující zelenou složku barvy. |
|
|
Celé číslo od 0 do 255 představující modrou složku barvy. |
Vrací hodnotu uint32_t , která představuje zabalenou hodnotu RGB aktualizované barvy.
// 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#
Aktualizuje barvu existujícího objektu s hodnotou color pomocí hodnot odstínu, sytosti a jasu.
color& hsv(
uint32_t hue,
double sat,
double value );
Parametr |
Typ |
Popis |
|---|---|---|
|
|
Celé číslo od 0 do 360, které představuje odstín barvy. |
|
|
Dvojitá hodnota od 0,0 do 1,0, která představuje sytost barvy. |
|
|
Dvojitá hodnota od 0,0 do 1,0, která představuje jas barvy. |
Vrátí odkaz na aktualizovaný objekt 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#
Aktualizuje barvu existujícího objektu s hodnotou color pomocí hexadecimální nebo webové hodnoty barvy.
color& web(
const char* color );
Parametr |
Typ |
Popis |
|---|---|---|
|
|
Hexadecimální nebo webová hodnota barvy, která definuje konkrétní barvu (např. |
Vrátí odkaz na aktualizovaný objekt 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);