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

Εισαγωγή#

Η κλάση color χρησιμοποιείται για τον ορισμό και την τροποποίηση χρωμάτων για τη σχεδίαση σχημάτων και την εμφάνιση κειμένου στην οθόνη V5 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 που αντιπροσωπεύει το μπλε στοιχείο.

Σημειώσεις#

  • Υποστηρίζονται οι ακόλουθες προκαθορισμένες σταθερές χρώματος:

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

Παράδειγμα#

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

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

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

Parameters

Παράμετρος

Τύπος

Περιγραφή

color

const char*

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

Return Values

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

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