Repasando Processing / Funciones y clases

En la carpeta Funciones y Clases encontrarás varios ejemplos de sketches que emplean esos elementos. Son aspectos que ya se han tratado aquí y que están comentados en el código, así que no merece la pena extenderse.

Dejo el sketch de la carpeta 4

Una función sencillita con parámetros

bichos01

//declaramos una variable para crear luego un loop while()
float i=0;
 
void setup(){
  size(300,300);
  smooth();
  //cambiamos el modo de color por otro más manejable
  colorMode(HSB, 100);
  //fondo de color aleatorio
  background(random(100),random(50), 50);
  //creamos el loop
  while(i<50){
    //ejecutamos 50 veces la función 'bicho()'
    bicho(random(width), random(height), i);
    i++;
  }
}
 
//definimos la función 'bicho()'
void bicho(float x, float y, float r){
  stroke(100);
  fill(random(100), 50, 50);
  ellipse(x, y, r, r);
  stroke(random(100), 25, 25);
  noFill();
  ellipse(x, y, r+6, r+6);
}

Si necesitáis repasar el uso de while() o los modos de color:

Funciones con parámetros

Observemos algunas funciones de Processing que ya conocemos:

smooth();
point(20, 30);
line(0, 0, width, height);

La primera sirve para mejorar la representación de imágenes en pantalla y no admite ningún parámetro, actúa siempre de la misma manera.

La segunda dibuja un punto en las coodenadas x=20, y=30. 20 y 30 son dos parámetros que la función point() asigna a las coordenadas x e y de un punto.

La tercera dibuja una recta que cruza la ventana desde el extremo superior izquierdo de la ventana (coordenadas x=0, y=0) al extremo inferior derecho (x = width = valor de la anchura de la ventana, y = height = valor de la altura de la ventana). La función line() toma, pues, cuatro parámetros.

Cuando invocamos las funciones point() y line(), distintos valores en sus parámetros producen diferentes resultados (un punto en una posición u otra, una recta de un tamaño, ángulo y posición diferentes…).

Al diseñar nuestras propias funciones, también podemos escribirlas de modo que tomen parámetros.
Continue reading

Crear una función propia

Hasta ahora hemos estado hablando de funciones (line(), point(), draw()…) que han sido predefinidas en Processing. Pero también podemos crear nuestras propias funciones e insertarlas en nuestros programas.

La forma más sencilla consiste, simplemente, en asignarle un nombre, seguido de «()» y un comportamiento:

miFuncion(){
comportamiento
}

Continue reading