Cores personalizadas#

Introdução#

O drone VEX AIR suporta a utilização de cores personalizadas para desenho e impressão de texto. As cores personalizadas podem ser criadas utilizando valores RGB ou códigos hexadecimais. As cores personalizadas também incluem métodos para atualizar objetos de cor durante um projeto.

Segue-se uma lista dos construtores disponíveis:

Construtores – Cria um novo objeto com Color valor.

  • Color(value) – Cria uma cor utilizando uma string hexadecimal (ex: "#FFF700"») ou um número inteiro hexadecimal (ex: 0xFFF700).

  • Color(r, g, b) – Cria uma cor utilizando valores de vermelho, verde e azul.

Mutadores – Actualizam um objecto Color existente.

  • rgb – Define um objeto de cor criado para uma nova cor utilizando valores RGB.

  • hsv – Define um objeto de cor criado para uma nova cor utilizando valores de matiz, saturação e brilho.

  • web – Define um objeto de cor criado para uma nova cor utilizando uma string de cor hexadecimal da web (ex: "#32C8B6").

Getters – Devolvem o valor de matiz ou saturação de um objeto de cor.

  • saturation – Devolve o valor de saturação para uma cor personalizada.

  • hue – Devolve o valor de matiz para uma cor personalizada.

Criando uma cor personalizada#

Para utilizar uma cor personalizada, deve primeiro criar um objeto Color utilizando um dos seguintes construtores:

Hexadecimal String#

Cria uma cor utilizando uma sequência de cores web (código hexadecimal).

Usage:
Color(value)

Parâmetro

Descrição

value

Um código hexadecimal de seis dígitos em formato de cadeia de caracteres (ex.: “#FF700” para amarelo).

# Construct a yellow Color "yellow" using a
# hexadecimal string
yellow = Color("#FFF700")

controller.screen.set_pen_color(yellow)
controller.screen.print("My Yellow")

Hexadecimal Integer#

Cria uma cor utilizando um número inteiro hexadecimal de seis dígitos.

Usage:
Color(value)

Parâmetro

Descrição

value

Um número inteiro de seis dígitos em formato hexadecimal (ex.: 0xFFF700 para amarelo).

# Construct a yellow Color "yellow" using a
# hexadecimal integer
yellow = Color(0xFFF700)

controller.screen.set_pen_color(yellow)
controller.screen.print("My Yellow")

RGB#

Cria uma cor utilizando valores separados de vermelho, verde e azul.

Usage:
Color(r, g, b)

Parâmetro

Descrição

r

Um número inteiro de 0 a 255 que representa a componente vermelha.

g

Um número inteiro de 0 a 255 que representa o componente verde.

b

Um número inteiro de 0 a 255 que representa o componente azul.

# Construct a yellow Color "yellow" using
# RGB values
yellow = Color(255, 247, 0)

controller.screen.set_pen_color(yellow)
controller.screen.print("My Yellow")

Mutantes#

Estes métodos atualizam a cor de um objeto existente do tipo Color Para os utilizar, atribua um valor do tipo Color a uma variável ao criá-la e, em seguida, chame o método nessa variável para alterar a sua cor.

rgb#

rgb atualiza a cor de um objeto existente Color utilizando valores RGB.

Usage:
variable_name.rgb(r, g, b)

Parâmetros

Descrição

r

Um número inteiro de 0 a 255 que representa a componente vermelha da cor.

g

Um número inteiro de 0 a 255 que representa a componente verde da cor.

b

Um número inteiro de 0 a 255 que representa a componente azul da cor.

# Create a custom teal color
my_fill_color = Color(50, 200, 180)

# Draw a teal rectangle
controller.screen.draw_rectangle(x=30, y=70, width=80, height=50, color=my_fill_color)

# Draw a magenta rectangle
my_fill_color.rgb(170, 40, 150)
controller.screen.draw_rectangle(x=130, y=70, width=80, height=50, color=my_fill_color)

hsv#

hsv atualiza a cor de um objeto existente Color utilizando valores HSV.

Nota: hsv só pode ser utilizado para alterar um objeto Color que já tenha sido criado. Não pode ser utilizado para criar um novo objeto Color.

Usage:
variable_name.hsv(h, s, v)

Parâmetros

Descrição

h

Um número inteiro de 0 a 359 que representa a tonalidade da cor.

s

Um valor decimal entre 0,0 e 1,0 que representa a saturação da cor.

v

Um valor de ponto flutuante entre 0,0 e 1,0 que representa o brilho da cor.

# Create a custom teal color
my_fill_color = Color(50, 200, 180)

# Draw a teal rectangle
controller.screen.draw_rectangle(x=30, y=70, width=80, height=50, color=my_fill_color)

# Draw a magenta rectangle
my_fill_color.hsv(300, 0.75, 0.78)
controller.screen.draw_rectangle(x=130, y=70, width=80, height=50, color=my_fill_color)

web#

web atualiza a cor de um objeto existente Color utilizando uma cor web (código hexadecimal).

Usage:
variable_name.web(value)

Parâmetros

Descrição

value

Uma cor web como uma string (código hexadecimal) (ex: “#FFF700”).

# Create a custom teal color
my_fill_color = Color("#32C8B6")

# Draw a teal rectangle
controller.screen.draw_rectangle(x=30, y=70, width=80, height=50, color=my_fill_color)

# Draw a magenta rectangle
my_fill_color.web("#AA2896")
controller.screen.draw_rectangle(x=130, y=70, width=80, height=50, color=my_fill_color)

Getters#

saturation#

saturation devolve o valor de saturação para uma cor personalizada como um número de ponto flutuante entre 0 e 1.

Usage:
my_color.saturation()

Substitua my_color pelo nome do objeto de cor personalizado.

Parâmetros

Descrição

Este método não tem parâmetros.

# Create a custom teal color
color_teal = Color(50, 200, 180)

# Display the saturation value of teal
controller.screen.print(color_teal.saturation())

hue#

hue devolve o valor de matiz para uma cor personalizada como um número de ponto flutuante entre 0 e 359.

Usage:
my_color.hue()

Substitua my_color pelo nome do objeto de cor personalizado.

Parâmetros

Descrição

Este método não tem parâmetros.

# Create a custom teal color
color_teal = Color(50, 200, 180)

# Display the hue value of teal
controller.screen.print(color_teal.hue())