Пользовательские цвета#

Введение#

Класс color используется для определения и изменения цветов при рисовании фигур и отображении текста на экране EXP Brain Screen. Цвета могут быть созданы с использованием значений RGB, шестнадцатеричных кодов цветов, значений HSV или предопределенных цветовых констант.

Конструкторы классов#

1 — Создает объект с цветом color , которому не присвоен цвет.

color();

2 — Создает объект с цветом color из шестнадцатеричного или целочисленного значения.

color( 
  int value );

3 — Создает объект с цветом color из значений RGB.

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

Деструктор класса#

Уничтожает объект с цветом color , освобождая связанные с ним ресурсы.

~color();

Параметры#

Параметр

Тип

Описание

value

int

Цветовое значение может быть либо шестнадцатеричным целым числом RGB (например, 0xFFF700), либо одной из предопределенных цветовых констант, перечисленных ниже.

r

uint8_t

Целое число от 0 до 255, представляющее красную составляющую.

g

uint8_t

Целое число от 0 до 255, представляющее зелёную составляющую.

b

uint8_t

Целое число от 0 до 255, представляющее синюю составляющую.

Примечания#

  • Поддерживаются следующие предопределенные цветовые константы:

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

Пример#

// 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 включает следующие функции-члены:

  • rgb — Обновляет цвет, используя значения RGB.

  • hsv — Обновляет цвет, используя значения HSV.

  • web — Обновляет цвет, используя шестнадцатеричную строку цвета из веб-браузера.

Перед вызовом любых функций-членов с цветом color необходимо создать экземпляр с цветом color , как показано ниже:

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

rgb#

Обновляет цвет существующего объекта с цветом color , используя значения RGB.

Available Functions

1 — Обновляет объект цвета с помощью упакованного значения RGB.

uint32_t rgb( 
  uint32_t value );

2 — Обновляет объект цвета отдельными значениями RGB.

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

Parameters

Параметр

Тип

Описание

value

uint32_t

Упакованное значение RGB, содержащее все три цветовые компоненты.

r

uint8_t

Целое число от 0 до 255, представляющее красную составляющую цвета.

g

uint8_t

Целое число от 0 до 255, представляющее зеленую составляющую цвета.

b

uint8_t

Целое число от 0 до 255, представляющее синюю составляющую цвета.

Return Values

Возвращает значение uint32_t , представляющее собой упакованное значение RGB обновленного цвета.

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#

Обновляет цвет существующего объекта с цветом color используя значения оттенка, насыщенности и яркости.

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

Parameters

Параметр

Тип

Описание

hue

uint32_t

Целое число от 0 до 360, обозначающее оттенок цвета.

sat

double

Значение типа double от 0,0 до 1,0, представляющее насыщенность цвета.

value

double

Число типа double от 0,0 до 1,0, представляющее яркость цвета.

Return Values

Возвращает ссылку на обновленный объект с цветом color.

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#

Обновляет цвет существующего объекта с цветом color , используя шестнадцатеричное или веб-значение цвета.

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

Parameters

Параметр

Тип

Описание

color

const char*

Шестнадцатеричное или веб-значение цвета, определяющее конкретный цвет (например, “#FF0000” для красного).

Return Values

Возвращает ссылку на обновленный объект с цветом color.

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