Προσαρμοσμένα χρώματα#

Εισαγωγή#

Η κλάση 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();

Παράμετροι#

Παράμετρος

Τύπος

Περιγραφή

value

int

Η τιμή χρώματος, η οποία μπορεί να είναι είτε ένας δεκαεξαδικός ακέραιος RGB (για παράδειγμα, 0xFFF700) είτε μία από τις προκαθορισμένες σταθερές χρώματος που αναφέρονται παρακάτω.

r

uint8_t

Ένας ακέραιος αριθμός από 0 έως 255 που αντιπροσωπεύει το κόκκινο στοιχείο.

g

uint8_t

Ένας ακέραιος αριθμός από 0 έως 255 που αντιπροσωπεύει το πράσινο στοιχείο.

b

uint8_t

Ένας ακέραιος αριθμός από 0 έως 255 που αντιπροσωπεύει το μπλε στοιχείο.

Σημειώσεις#

  • The following predefined color constants are supported:

    • black
    • blue
    • blue_green
    • blue_violet
    • cyan
    • green
    • orange
    • purple
    • red
    • red_orange
    • red_violet
    • transparent
    • violet
    • white
    • yellow
    • yellow_green
    • yellow_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.

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
// 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 χρησιμοποιώντας τιμές απόχρωσης, κορεσμού και φωτεινότητας.

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

Parameters

Παράμετρος

Τύπος

Περιγραφή

hue

uint32_t

Ένας ακέραιος αριθμός από 0 έως 360 που αντιπροσωπεύει την απόχρωση του χρώματος.

sat

double

Ένα διπλάσιο από 0,0 έως 1,0 που αντιπροσωπεύει τον κορεσμό του χρώματος.

value

double

Ένα διπλάσιο από 0,0 έως 1,0 που αντιπροσωπεύει τη φωτεινότητα του χρώματος.

Return Values

Επιστρέφει μια αναφορά στο ενημερωμένο αντικείμενο color.

Examples
// 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 χρησιμοποιώντας μια δεκαεξαδική ή διαδικτυακή τιμή χρώματος.

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

Parameters

Παράμετρος

Τύπος

Περιγραφή

color

const char*

Μια δεκαεξαδική ή διαδικτυακή τιμή χρώματος που ορίζει ένα συγκεκριμένο χρώμα (π.χ., “#FF0000” για κόκκινο).

Return Values

Επιστρέφει μια αναφορά στο ενημερωμένο αντικείμενο color.

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