Warna Kustom#

Perkenalan#

Kelas color digunakan untuk mendefinisikan dan memodifikasi warna untuk menggambar bentuk dan menampilkan teks pada Layar EXP Brain. Warna dapat dibuat menggunakan nilai RGB, kode warna heksadesimal, nilai HSV, atau konstanta warna yang telah ditentukan sebelumnya.

Konstruktor Kelas#

1 — Membuat objek color tanpa warna yang ditetapkan.

color();

2 — Creates a color object from a hexadecimal or integer value.

color( 
  int value );

3 — Creates a color object from RGB values.

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

Destruktor Kelas#

Menghancurkan objek color dan melepaskan sumber daya terkait.

~color();

Parameter#

Parameter

Jenis

Keterangan

value

int

Nilai warna, yang dapat berupa bilangan bulat heksadesimal RGB (misalnya, 0xFFF700) atau salah satu konstanta warna yang telah ditentukan sebelumnya yang tercantum di bawah ini.

r

uint8_t

Bilangan bulat dari 0 hingga 255 yang mewakili komponen merah.

g

uint8_t

Bilangan bulat dari 0 hingga 255 yang mewakili komponen hijau.

b

uint8_t

Bilangan bulat dari 0 hingga 255 yang mewakili komponen biru.

Catatan#

  • Konstanta warna yang telah ditentukan sebelumnya berikut ini didukung:

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

Contoh#

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

Fungsi Keanggotaan#

Kelas color mencakup fungsi anggota berikut:

  • rgb — Memperbarui warna menggunakan nilai RGB.

  • hsv — Memperbarui warna menggunakan nilai HSV.

  • web — Memperbarui warna menggunakan string warna heksadesimal web.

Sebelum memanggil fungsi anggota color apa pun, sebuah instance color harus dibuat, seperti yang ditunjukkan di bawah ini:

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

rgb#

Memperbarui warna objek color yang sudah ada menggunakan nilai RGB.

Available Functions

1 — Memperbarui objek warna dengan nilai RGB terkompresi.

uint32_t rgb( 
  uint32_t value );

2 — Memperbarui objek warna dengan nilai RGB terpisah.

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

Parameters

Parameter

Jenis

Keterangan

value

uint32_t

Nilai RGB terkompresi yang berisi ketiga komponen warna.

r

uint8_t

Bilangan bulat dari 0 hingga 255 yang mewakili komponen merah dari warna tersebut.

g

uint8_t

Bilangan bulat dari 0 hingga 255 yang mewakili komponen hijau dari warna tersebut.

b

uint8_t

Bilangan bulat dari 0 hingga 255 yang mewakili komponen biru dari warna tersebut.

Return Values

Mengembalikan nilai uint32_t yang mewakili nilai RGB terkompresi dari warna yang diperbarui.

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#

Memperbarui warna objek color yang sudah ada menggunakan nilai hue, saturasi, dan kecerahan.

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

Parameters

Parameter

Jenis

Keterangan

hue

uint32_t

Bilangan bulat dari 0 hingga 360 yang mewakili corak warna.

sat

double

Angka dua dari 0,0 hingga 1,0 yang mewakili saturasi warna.

value

double

Angka dua dari 0,0 hingga 1,0 yang mewakili kecerahan warna.

Return Values

Mengembalikan referensi ke objek color yang telah diperbarui.

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#

Memperbarui warna objek color yang sudah ada menggunakan nilai heksadesimal atau nilai warna web.

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

Parameters

Parameter

Jenis

Keterangan

color

const char*

Nilai heksadesimal atau nilai warna web yang mendefinisikan warna tertentu (misalnya, “#FF0000” untuk merah).

Return Values

Mengembalikan referensi ke objek color yang telah diperbarui.

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