Warna Kustom#
Perkenalan#
Kelas color digunakan untuk mendefinisikan dan memodifikasi warna untuk menggambar bentuk dan menampilkan teks pada Layar Otak IQ (generasi ke-2). Warna dapat dibuat menggunakan nilai RGB, kode warna heksadesimal, atau konstanta warna yang telah ditentukan sebelumnya.
Konstruktor Kelas#
1 — Membuat objek
colortanpa warna yang ditetapkan.color();
2 — Creates a
colorobject from a hexadecimal or integer value.color( int value );
3 — Creates a
colorobject 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 |
|---|---|---|
|
|
Nilai warna, yang dapat berupa bilangan bulat heksadesimal RGB (misalnya, |
|
|
Bilangan bulat dari 0 hingga 255 yang mewakili komponen merah. |
|
|
Bilangan bulat dari 0 hingga 255 yang mewakili komponen hijau. |
|
|
Bilangan bulat dari 0 hingga 255 yang mewakili komponen biru. |
Catatan#
Konstanta warna yang telah ditentukan sebelumnya berikut ini didukung:
blackblueblue_greenblue_violetcyangreenorangepurpleredred_orangered_violettransparentvioletwhiteyellowyellow_greenyellow_orange
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.
1 — Memperbarui objek warna dengan nilai RGB terkompresi.
uint32_t rgb( uint32_t value );
Parameters2 — Memperbarui objek warna dengan nilai RGB terpisah.
uint32_t rgb( uint8_t r, uint8_t g, uint8_t b );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Nilai RGB terkompresi yang berisi ketiga komponen warna. |
|
|
Bilangan bulat dari 0 hingga 255 yang mewakili komponen merah dari warna tersebut. |
|
|
Bilangan bulat dari 0 hingga 255 yang mewakili komponen hijau dari warna tersebut. |
|
|
Bilangan bulat dari 0 hingga 255 yang mewakili komponen biru dari warna tersebut. |
Mengembalikan nilai uint32_t yang mewakili nilai RGB terkompresi dari warna yang diperbarui.
// 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.
color& hsv(
uint32_t hue,
double sat,
double value );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Bilangan bulat dari 0 hingga 360 yang mewakili corak warna. |
|
|
Angka dua dari 0,0 hingga 1,0 yang mewakili saturasi warna. |
|
|
Angka dua dari 0,0 hingga 1,0 yang mewakili kecerahan warna. |
Mengembalikan referensi ke objek color yang telah diperbarui.
// 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.
color& web(
const char* color );
Parameter |
Jenis |
Keterangan |
|---|---|---|
|
|
Nilai heksadesimal atau nilai warna web yang mendefinisikan warna tertentu (misalnya, |
Mengembalikan referensi ke objek color yang telah diperbarui.
// 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);