Herramientas de usuario

Herramientas del sitio


highlevel:processing

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
highlevel:processing [2010/04/02 19:45]
alfred
highlevel:processing [2020/05/09 09:25] (actual)
Línea 147: Línea 147:
 } }
 </​code>​ </​code>​
 +
 +
  
  
Línea 201: Línea 203:
   * ''​scale(fValue)'',​ para realizar un escalado.   * ''​scale(fValue)'',​ para realizar un escalado.
 <code java> <code java>
 +int ang = 0;
 +
 void setup() void setup()
 { {
   size(200,​200);​   size(200,​200);​
 +}
 +
 +void draw()
 +{
   background(255);​   background(255);​
-  ​ 
   stroke(128);​   stroke(128);​
-  ​rect(20, 20, 40, 40); +  ​strokeWeight(3);
-   +
-  stroke(0);+
   pushMatrix();​   pushMatrix();​
-  ​scale(2.0); +  ​translate(100,100); 
-  rect(20, 20, 40, 40);+  rotate(radians(ang)); 
 +  rect(-40, -40, 80, 80);
   popMatrix();​   popMatrix();​
 +  ang++;
 } }
- 
 </​code>​ </​code>​
 +
 +
  
 ==== Otras funciones ==== ==== Otras funciones ====
   * ''​saveFrame''​ para guardar el frame actual como imágen.   * ''​saveFrame''​ para guardar el frame actual como imágen.
   * Remarcar también que podemos acceder a las variables ''​height''​ y ''​width''​ que nos indicarán el tamaño actual de la ventana.   * Remarcar también que podemos acceder a las variables ''​height''​ y ''​width''​ que nos indicarán el tamaño actual de la ventana.
-=== Funciones ​trigonometricas ​===+=== Funciones ​matemáticas ​=== 
 +  * ''​sqrt(number)'':​ Devuelve la raíz cuadrada del número. 
 +  * ''​pow(number,​ exponent)'':​ Eleva el número al exponente dado.
   * ''​radians(angle)'':​ Devuelve los radianes de un ángulo expresado en grados.   * ''​radians(angle)'':​ Devuelve los radianes de un ángulo expresado en grados.
   * ''​degrees(radians)'':​ Devuelve los grados de un ángulo expresado en radianes.   * ''​degrees(radians)'':​ Devuelve los grados de un ángulo expresado en radianes.
  
-===== Avanzado ===== 
  
 +
 +
 +
 +==== Otras clases ====
 +=== PVector ===
 +La clase ''​PVector''​ nos facilita las operaciones con vectores mediante el uso de sus métodos
 +Métodos:
 +  * ''​set()'',​ asigna los valores para la x, la y y la z del vector.
 +  * ''​get()'',​ recoge los valores de la x, la y y la z.
 +  * ''​mag()'',​ calcula la magnitud (tamaño) del vector.
 +  * ''​add()'',​ suma otro vector al vector.
 +  * ''​sub()'',​ resta un vector al vector.
 +  * ''​mult()'',​ multiplica el vector por un escalar.
 +  * ''​div()'',​ divide el vector por un escalar.
 +  * ''​dist()'',​ calcula la distancia euclidea entre dos puntos.
 +  * ''​dot()'',​ calcula el producto escalar.
 +  * ''​cross()'',​ calcula el producto cruzado.
 +  * ''​normalize()'',​ normaliza un vector.
 +  * ''​limit()'',​ limita la magnitud del vector.
 +  * ''​angleBetween()'',​ calcula el ángulo entre dos vectores.
 +  * ''​array()'',​ retorna la representación del vector como un array.
 +El siguiente código...
 +<code java>
 +float x = 100;
 +float y = 100;
 +float xspeed = 1;
 +float yspeed = 3.3;
 +x = x + xspeed;
 +y = y + yspeed;
 +</​code>​
 +Podríamos llegar a escribirlo como...
 +<code java>
 +PVector location = new PVector(100,​ 100);
 +PVector velocity = new PVector(1, 3.3);
 +location.add(velocity);​
 +</​code>​
 +
 +===== Avanzado =====
  
  
 ===== Otros ===== ===== Otros =====
 +
 ==== Como... ==== ==== Como... ====
 +=== Trucos gráficos ===
 +  * Para crear **motion blur**, en cada frame en vez de indicar "​borrar todo el backgraund"​ lo que haríamos es dibujar un cuadrado blanco pero con alpha:
 +<code java>
 +void draw() {
 +  // backgraund(255);​
 +  noStroke();
 +  fill(255,​10);​
 +  rect(0,​0,​width,​height);​
 +  // Rutina de dibujo
 +</​code>​
  
 ==== Ejemplos ==== ==== Ejemplos ====
highlevel/processing.1270237558.txt.gz · Última modificación: 2020/05/09 09:24 (editor externo)