Màu sắc tùy chỉnh#

Giới thiệu#

Lớp color được sử dụng để định nghĩa và chỉnh sửa màu sắc khi vẽ hình dạng và hiển thị văn bản trên màn hình não IQ (thế hệ thứ 2). Màu sắc có thể được tạo bằng cách sử dụng giá trị RGB, mã màu thập lục phân hoặc hằng số màu được xác định trước.

Hàm tạo lớp#

1 — Tạo một đối tượng color không có màu được chỉ định.

color();

2 — Tạo một đối tượng có màu color từ một giá trị thập lục phân hoặc số nguyên.

color( 
  int value );

3 — Tạo một đối tượng color từ các giá trị RGB.

color( 
  uint8_t r, 
  uint8_t g, 
  uint8_t b );

Lớp Destructor#

Hủy đối tượng màu color và giải phóng các tài nguyên liên quan.

~color();

Thông số#

Tham số

Kiểu

Sự miêu tả

value

int

Giá trị màu sắc có thể là một số nguyên RGB thập lục phân (ví dụ: 0xFFF700) hoặc một trong các hằng số màu được xác định trước được liệt kê bên dưới.

r

uint8_t

Một số nguyên từ 0 đến 255 biểu thị thành phần màu đỏ.

g

uint8_t

Một số nguyên từ 0 đến 255 biểu thị thành phần màu xanh lá cây.

b

uint8_t

Một số nguyên từ 0 đến 255 biểu thị thành phần màu xanh lam.

Ghi chú#

  • 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

Ví dụ#

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

Chức năng thành viên#

Lớp color bao gồm các hàm thành viên sau:

  • rgb — Cập nhật màu bằng cách sử dụng giá trị RGB.

  • hsv — Cập nhật màu bằng cách sử dụng giá trị HSV.

  • web — Cập nhật màu bằng cách sử dụng chuỗi màu hex web.

Trước khi gọi bất kỳ hàm thành viên nào có màu color , cần phải tạo một thể hiện có màu color , như hình bên dưới:

// Create a color using RGB values
color brainColor = color(255, 128, 0);

rgb#

Cập nhật màu sắc của một đối tượng hiện có color bằng cách sử dụng giá trị RGB.

Available Functions

1 — Cập nhật một đối tượng màu với giá trị RGB đóng gói.

uint32_t rgb( 
  uint32_t value );

2 — Cập nhật một đối tượng màu với các giá trị RGB riêng biệt.

uint32_t rgb( 
  uint8_t r, 
  uint8_t g, 
  uint8_t b );

Parameters

Tham số

Kiểu

Sự miêu tả

value

uint32_t

Giá trị RGB được đóng gói chứa cả ba thành phần màu.

r

uint8_t

Một số nguyên từ 0 đến 255 biểu thị thành phần màu đỏ của màu sắc đó.

g

uint8_t

Một số nguyên từ 0 đến 255 biểu thị thành phần màu xanh lá cây của màu sắc.

b

uint8_t

Một số nguyên từ 0 đến 255 biểu thị thành phần màu xanh lam của màu sắc.

Return Values

Trả về một giá trị uint32_t biểu thị giá trị RGB đóng gói của màu đã được cập nhật.

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#

Cập nhật màu sắc của một đối tượng hiện có color bằng cách sử dụng các giá trị sắc độ, độ bão hòa và độ sáng.

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

Parameters

Tham số

Kiểu

Sự miêu tả

hue

uint32_t

Một số nguyên từ 0 đến 360 biểu thị sắc độ của màu sắc.

sat

double

Một giá trị nhị phân từ 0,0 đến 1,0 biểu thị độ bão hòa của màu sắc.

value

double

Một giá trị nhị phân từ 0,0 đến 1,0 biểu thị độ sáng của màu sắc.

Return Values

Trả về tham chiếu đến đối tượng color đã được cập nhật.

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#

Cập nhật màu sắc của một đối tượng có màu color hiện có bằng cách sử dụng giá trị thập lục phân hoặc giá trị màu web.

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

Parameters

Tham số

Kiểu

Sự miêu tả

color

const char*

Giá trị thập lục phân hoặc giá trị màu trên web xác định một màu cụ thể (ví dụ: “#FF0000” cho màu đỏ).

Return Values

Trả về tham chiếu đến đối tượng color đã được cập nhật.

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