Προσαρμοσμένα χρώματα#
Εισαγωγή#
Η κλάση color χρησιμοποιείται για τον ορισμό και την τροποποίηση χρωμάτων με το IQ (1ης γενιάς) 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 που αντιπροσωπεύει το μπλε στοιχείο. |
Σημειώσεις#
The following predefined color constants are supported:
blackblueblue_greenblue_violetcyangreenorangepurpleredred_orangered_violettransparentvioletwhiteyellowyellow_greenyellow_orange
Παράδειγμα#
// 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 του ενημερωμένου χρώματος.
// Drive until a teal object is found
color brainColor = color(50, 200, 180);
Drivetrain.drive(forward);
while (true) {
if (Color1.detects(brainColor)) {
Drivetrain.stop();
break;
}
wait(0.5, seconds);
}
hsv#
Ενημερώνει το χρώμα ενός υπάρχοντος αντικειμένου με χρώμα color χρησιμοποιώντας τιμές απόχρωσης, κορεσμού και φωτεινότητας.
color& hsv(
uint32_t hue,
double sat,
double value );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Ένας ακέραιος αριθμός από 0 έως 360 που αντιπροσωπεύει την απόχρωση του χρώματος. |
|
|
Ένα διπλάσιο από 0,0 έως 1,0 που αντιπροσωπεύει τον κορεσμό του χρώματος. |
|
|
Ένα διπλάσιο από 0,0 έως 1,0 που αντιπροσωπεύει τη φωτεινότητα του χρώματος. |
Επιστρέφει μια αναφορά στο ενημερωμένο αντικείμενο color.
// Create a custom teal color
color brainColor = color(50, 200, 180);
// Change the color to magenta
brainColor.hsv(300, 0.75, 0.78);
// Drive forward until a magenta object is found
Drivetrain.drive(forward);
while (true) {
if (Color1.detects(brainColor)) {
Drivetrain.stop();
break;
}
wait(0.5, seconds);
}
web#
Ενημερώνει το χρώμα ενός υπάρχοντος αντικειμένου με χρώμα color χρησιμοποιώντας μια δεκαεξαδική ή διαδικτυακή τιμή χρώματος.
color& web(
const char* color );
Παράμετρος |
Τύπος |
Περιγραφή |
|---|---|---|
|
|
Μια δεκαεξαδική ή διαδικτυακή τιμή χρώματος που ορίζει ένα συγκεκριμένο χρώμα (π.χ., |
Επιστρέφει μια αναφορά στο ενημερωμένο αντικείμενο color.
// Create a custom teal color
color brainColor = color(50, 200, 180);
// Change the color to magenta
brainColor.web("#AA2896");
// Drive forward until a magenta object is found
Drivetrain.drive(forward);
while (true) {
if (Color1.detects(brainColor)) {
Drivetrain.stop();
break;
}
wait(0.5, seconds);
}