Pasirinktinės spalvos#

Įvadas#

color klasė naudojama apibrėžti ir modifikuoti spalvas, skirtas figūrų piešimui ir teksto rodymui EXP Brain ekrane. Spalvas galima kurti naudojant RGB reikšmes, šešioliktainius spalvų kodus, HSV reikšmes arba iš anksto nustatytas spalvų konstantas.

Klasės konstruktoriai#

1 — Sukuria color objektą be priskirtos spalvos.

color();

2 — Sukuria color objektą iš šešioliktainės arba sveikojo skaičiaus reikšmės.

color( 
  int value );

3 — Sukuria color objektą iš RGB reikšmių.

color( 
  uint8_t r, 
  uint8_t g, 
  uint8_t b );

Klasės destruktorius#

Sunaikina color objektą ir išlaisvina susijusius išteklius.

~color();

Parametrai#

Parametras

Tipas

Aprašymas

value

int

Spalvos reikšmė, kuri gali būti šešioliktainis RGB sveikasis skaičius (pvz., 0xFFF700) arba viena iš iš anksto apibrėžtų spalvų konstantų, išvardytų toliau.

r

uint8_t

Sveikasis skaičius nuo 0 iki 255, žymintis raudoną komponentą.

g

uint8_t

Sveikasis skaičius nuo 0 iki 255, žymintis žaliąją komponentę.

b

uint8_t

Sveikasis skaičius nuo 0 iki 255, žymintis mėlynąją komponentę.

Pastabos#

  • Palaikomos šios iš anksto apibrėžtos spalvų konstantos:

    • black
    • blue
    • cyan
    • green
    • orange
    • purple
    • red
    • transparent
    • violet
    • white
    • yellow

Pavyzdys#

// 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);

Narių funkcijos#

color klasė apima šias narines funkcijas:

  • rgb – Atnaujina spalvą naudojant RGB reikšmes.

  • hsv – Atnaujina spalvą naudodama HSV reikšmes.

  • web – Atnaujina spalvą naudodama šešioliktainę spalvų eilutę internete.

Prieš iškviečiant bet kokias color narių funkcijas, reikia sukurti color egzempliorių, kaip parodyta žemiau:

// Create a color using RGB values
color brainColor = color(255, 128, 0);

rgb#

Atnaujina esamo color objekto spalvą naudojant RGB reikšmes.

Available Functions

1 — Atnaujina spalvos objektą su supakuota RGB reikšme.

uint32_t rgb( 
  uint32_t value );

2 — Atnaujina spalvos objektą su atskiromis RGB reikšmėmis.

uint32_t rgb( 
  uint8_t r, 
  uint8_t g, 
  uint8_t b );

Parameters

Parametras

Tipas

Aprašymas

value

uint32_t

Supakuota RGB reikšmė, apimanti visus tris spalvų komponentus.

r

uint8_t

Sveikasis skaičius nuo 0 iki 255, žymintis raudoną spalvos komponentą.

g

uint8_t

Sveikasis skaičius nuo 0 iki 255, žymintis žalią spalvos komponentą.

b

uint8_t

Sveikasis skaičius nuo 0 iki 255, žymintis mėlyną spalvos komponentą.

Return Values

Grąžina uint32_t , rodantį atnaujintos spalvos supakuotą RGB reikšmę.

Examples
// 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#

Atnaujina esamo color objekto spalvą naudojant atspalvio, sodrumo ir ryškumo reikšmes.

Available Functions
color& hsv( 
  uint32_t hue, 
  double   sat, 
  double   value );

Parameters

Parametras

Tipas

Aprašymas

hue

uint32_t

Sveikasis skaičius nuo 0 iki 360, žymintis spalvos atspalvį.

sat

double

Dvigubas skaičius nuo 0,0 iki 1,0, kuris rodo spalvos sodrumą.

value

double

Dvigubas skaičius nuo 0,0 iki 1,0, kuris rodo spalvos ryškumą.

Return Values

Grąžina nuorodą į atnaujintą color objektą.

Examples
// 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#

Atnaujina esamo color objekto spalvą naudojant šešioliktainę arba žiniatinklio spalvos reikšmę.

Available Functions
color& web( 
  const char* color );

Parameters

Parametras

Tipas

Aprašymas

color

const char*

Šešioliktainė arba žiniatinklio spalvos reikšmė, apibrėžianti konkrečią spalvą (pvz., “#FF0000” , jei tai raudona).

Return Values

Grąžina nuorodą į atnaujintą color objektą.

Examples
// 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);