Hasta el momento hemos visto varios tipos de datos:
- int: número entero
- float: número decimal
- String: cadena de texto
- PImage: imagen
Bien, pues también tenemos el tipo de dato (datatype) color.
Puede llamar a confusión porque existe una función con el mismo nombre, que toma como parámetros los valores de cada canal según el modo de color: rojo, verde y azul en modo RGB; y tono, saturación y brillo en modo HSB (ej. color(255, 50, 30)).
Vamos a usarlos en un programa que dibuje formas de diferente color dependiendo de su posición:
//declaramos tres variables del tipo 'color'
color verde = #30B247;
color rojo = #C10600;
color blanco = 255;
//esta última la definimos con una función 'color'
color fondo = color(random(100), random(100), random(100));
float x = 0;
float y = 0;
void setup(){
size(300, 300);
rectMode(CENTER);
background(fondo);
}
void draw(){
//coordenadas x e y aleatorias
x = random(width);
y = random(height);
//si estás a más de 50px del borde, rojo
if(x > 50 && x < 250 && y > 50 && y < 250){
fill(rojo);
//si no, verde
} else {
fill(verde);
}
modulo(x, y);
}
void modulo(float mx, float my) {
translate(mx, my);
rotate(random(100));
stroke(fondo);
rect(0, 0, 15, 15, 10, 10, 10, 0);
}
Gracias por las ideas. Saludos!!!