ألوان مخصصة#

مقدمة#

تُستخدم فئة اللون color لتعريف وتعديل الألوان المستخدمة في رسم الأشكال وعرض النصوص على شاشة الدماغ IQ (الجيل الثاني). ويمكن إنشاء الألوان باستخدام قيم RGB، أو رموز الألوان السداسية العشرية، أو ثوابت الألوان المُعرَّفة مسبقًا.

مُنشئات الفئات#

1 — ينشئ كائنًا بلون color بدون لون معين.

color();

2 — Creates a color object from a hexadecimal or integer value.

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 — يقوم بتحديث اللون باستخدام سلسلة ألوان سداسية عشرية للويب.

قبل استدعاء أي من الدوال الأعضاء ذات اللون 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);