Προσαρμοσμένα χρώματα#
Εισαγωγή#
Η κλάση color χρησιμοποιείται για τον ορισμό και την τροποποίηση χρωμάτων για τη σχεδίαση σχημάτων και την εμφάνιση κειμένου στην οθόνη EXP Brain. Τα χρώματα μπορούν να δημιουργηθούν χρησιμοποιώντας τιμές 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();
Παράμετροι#
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Η τιμή χρώματος, η οποία μπορεί να είναι είτε ένας δεκαεξαδικός ακέραιος RGB (για παράδειγμα, |
|
|
Ένας ακέραιος αριθμός από 0 έως 255 που αντιπροσωπεύει το κόκκινο στοιχείο. |
|
|
Ένας ακέραιος αριθμός από 0 έως 255 που αντιπροσωπεύει το πράσινο στοιχείο. |
|
|
Ένας ακέραιος αριθμός από 0 έως 255 που αντιπροσωπεύει το μπλε στοιχείο. |
Σημειώσεις#
Υποστηρίζονται οι ακόλουθες προκαθορισμένες σταθερές χρώματος:
blackbluecyangreenorangepurpleredtransparentvioletwhiteyellow
Παράδειγμα#
// 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— Ενημερώνει το χρώμα χρησιμοποιώντας μια δεκαεξαδική συμβολοσειρά χρώματος web.
Πριν από την κλήση οποιασδήποτε συνάρτησης μέλους color , πρέπει να δημιουργηθεί μια παρουσία color , όπως φαίνεται παρακάτω:
// Create a color using RGB values
color brainColor = color(255, 128, 0);
rgb#
Ενημερώνει το χρώμα ενός υπάρχοντος αντικειμένου με χρώμα color χρησιμοποιώντας τιμές RGB.
1 — Ενημερώνει ένα χρωματικό αντικείμενο με μια τιμή RGB σε πακέτο.
uint32_t rgb( uint32_t value );
Parameters2 — Ενημερώνει ένα χρωματικό αντικείμενο με ξεχωριστές τιμές RGB.
uint32_t rgb( uint8_t r, uint8_t g, uint8_t b );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Μια συσκευασμένη τιμή RGB που περιέχει και τα τρία στοιχεία χρώματος. |
|
|
Ένας ακέραιος αριθμός από 0 έως 255 που αντιπροσωπεύει το κόκκινο στοιχείο του χρώματος. |
|
|
Ένας ακέραιος αριθμός από 0 έως 255 που αντιπροσωπεύει το πράσινο στοιχείο του χρώματος. |
|
|
Ένας ακέραιος αριθμός από 0 έως 255 που αντιπροσωπεύει το μπλε στοιχείο του χρώματος. |
Επιστρέφει μια τιμή uint32_t που αντιπροσωπεύει την τιμή RGB του ενημερωμένου χρώματος.
// 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 χρησιμοποιώντας τιμές απόχρωσης, κορεσμού και φωτεινότητας.
color& hsv(
uint32_t hue,
double sat,
double value );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Ένας ακέραιος αριθμός από 0 έως 360 που αντιπροσωπεύει την απόχρωση του χρώματος. |
|
|
Ένα διπλάσιο από 0,0 έως 1,0 που αντιπροσωπεύει τον κορεσμό του χρώματος. |
|
|
Ένα διπλάσιο από 0,0 έως 1,0 που αντιπροσωπεύει τη φωτεινότητα του χρώματος. |
Επιστρέφει μια αναφορά στο ενημερωμένο αντικείμενο 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#
Ενημερώνει το χρώμα ενός υπάρχοντος αντικειμένου με χρώμα color χρησιμοποιώντας μια δεκαεξαδική ή διαδικτυακή τιμή χρώματος.
color& web(
const char* color );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Μια δεκαεξαδική ή διαδικτυακή τιμή χρώματος που ορίζει ένα συγκεκριμένο χρώμα (π.χ., |
Επιστρέφει μια αναφορά στο ενημερωμένο αντικείμενο 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);