Aangepaste kleuren#
Invoering#
De klasse color wordt gebruikt om kleuren te definiëren en te wijzigen met de IQ (1e generatie) Brain. Kleuren kunnen worden aangemaakt met behulp van RGB-waarden, hexadecimale kleurcodes, HSV-waarden of vooraf gedefinieerde kleurconstanten.
Klasseconstructors#
1 — Maakt een object met kleur
coloraan, zonder toegewezen kleur.color();
2 — Maakt een object van kleur
coloraan op basis van een hexadecimale of integerwaarde.color( int value );
3 — Maakt een object met kleur
colorop basis van RGB-waarden.color( uint8_t r, uint8_t g, uint8_t b );
Klasse-destructor#
Vernietigt het object met kleur color en geeft de bijbehorende resources vrij.
~color();
Parameters#
Parameter |
Type |
Beschrijving |
|---|---|---|
|
|
De kleurwaarde kan een hexadecimaal RGB-getal zijn (bijvoorbeeld |
|
|
Een geheel getal van 0 tot 255 dat de rode component vertegenwoordigt. |
|
|
Een geheel getal van 0 tot 255 dat het groene component vertegenwoordigt. |
|
|
Een geheel getal van 0 tot 255 dat de blauwe component vertegenwoordigt. |
Notities#
De volgende vooraf gedefinieerde kleurconstanten worden ondersteund:
blackblueblue_greenblue_violetcyangreenorangepurpleredred_orangered_violettransparentvioletwhiteyellowyellow_greenyellow_orange
Voorbeeld#
// 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);
Lidfuncties#
De klasse color omvat de volgende lidfuncties:
rgb— Werkt de kleur bij met behulp van RGB-waarden.hsv— Werkt de kleur bij met behulp van HSV-waarden.web— Werkt de kleur bij met behulp van een hexadecimale webkleurstring.
Voordat er lidfuncties van type color kunnen worden aangeroepen, moet er een instantie color worden aangemaakt, zoals hieronder wordt weergegeven:
// Create a color using RGB values
color brainColor = color(255, 128, 0);
rgb#
Hiermee wordt de kleur van een bestaand object met kleurcode color bijgewerkt met behulp van RGB-waarden.
1 — Werkt een kleurobject bij met een gecomprimeerde RGB-waarde.
uint32_t rgb( uint32_t value );
Parameters2 — Werkt een kleurobject bij met afzonderlijke RGB-waarden.
uint32_t rgb( uint8_t r, uint8_t g, uint8_t b );
Parameter |
Type |
Beschrijving |
|---|---|---|
|
|
Een compacte RGB-waarde die alle drie de kleurcomponenten bevat. |
|
|
Een geheel getal van 0 tot 255 dat de rode component van de kleur vertegenwoordigt. |
|
|
Een geheel getal van 0 tot 255 dat de groene component van de kleur vertegenwoordigt. |
|
|
Een geheel getal van 0 tot 255 dat het blauwe component van de kleur vertegenwoordigt. |
Retourneert een uint32_t die de gecomprimeerde RGB-waarde van de bijgewerkte kleur vertegenwoordigt.
// 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#
Hiermee wordt de kleur van een bestaand object met kleurwaarden color bijgewerkt met behulp van de waarden voor tint, verzadiging en helderheid.
color& hsv(
uint32_t hue,
double sat,
double value );
Parameter |
Type |
Beschrijving |
|---|---|---|
|
|
Een geheel getal van 0 tot 360 dat de tint van de kleur weergeeft. |
|
|
Een dubbele waarde van 0,0 tot 1,0 die de verzadiging van de kleur weergeeft. |
|
|
Een decimaal getal van 0,0 tot 1,0 dat de helderheid van de kleur weergeeft. |
Retourneert een verwijzing naar het bijgewerkte object met kleur 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#
Hiermee wordt de kleur van een bestaand object met de waarde color bijgewerkt met behulp van een hexadecimale of webkleurwaarde.
color& web(
const char* color );
Parameter |
Type |
Beschrijving |
|---|---|---|
|
|
Een hexadecimale of webkleurwaarde die een specifieke kleur definieert (bijv. |
Retourneert een verwijzing naar het bijgewerkte object met kleur 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);
}