Hackpact.Mx |

Arte Generativo

  Inicio ¿qué es?   participantes

Ligas de interés

¿cómo subir los códigos?  

  Archivo Muestra

| processing

 

 
 

Este es un trabajo de exploración para la realización de nodos, nodos y más nodos. Para hacer funcionar el sketch, es necesario presionar la letra "q" y la letra "w" , ambas en minúsculas.

//por Citlali Hernández, 02.11.11
 
//ejercicio para la página de arte generativo

 
//nodo
// Variables de variacion y de posici´nn
float variacionX0, variacionY0, posX0, posY0;
float variacionX2, variacionY2, posX2, posY2;
float variacionX3, variacionY3, posX3, posY3;
float variacionX4, variacionY4, posX4, posY4;
float variacionX5, variacionY5, posX5, posY5;
//indice de variaci´on nodo 1
float ruidoX0 = 0.015;
float ruidoY0 = 0.014;
float ruidoX2 = 0.0091;
float ruidoY2 = 0.015;
float ruidoX3 = 0.0015;
float ruidoY3 = 0.0013;
float ruidoX4 = 0.0055;
float ruidoY4 = 0.0037;
float ruidoX5 = 0.0195;
float ruidoY5 = 0.0035;
// nodo2
// Variables de variacion y de posici´nn
float variacionXw0, variacionYw0, posXw0, posYw0;
float variacionXw2, variacionYw2, posXw2, posYw2;
float variacionXw3, variacionYw3, posXw3, posYw3;
float variacionXw4, variacionYw4, posXw4, posYw4;
float variacionXw5, variacionYw5, posXw5, posYw5;
// variaci´on nodo 2
float ruidoXw0 = 0.075;
float ruidoYw0 = 0.084;
float ruidoXw2 = 0.091;
float ruidoYw2 = 0.045;
float ruidoXw3 = 0.079;
float ruidoYw3 = 0.075;
float ruidoXw4 = 0.0055;
float ruidoYw4 = 0.0037;
float ruidoXw5 = 0.0195;
float ruidoYw5 = 0.0035;
/// --- SETUP --- ///
void setup () {
size (300,500);
smooth();
//noCursor();
cursor(CROSS);
background(15, 15, 15);
}
void draw() {
entraNodo1();
entraNodo2();
}
void entraNodo1() {
if (keyPressed) {
if (key == 'q') {
background(15);
//p1 violeta
calcularPerlin();
fill(255);
//fill(245,30,217);
noStroke();
//p2 azul
// fill(35,136,216);
fill(255);
calcularPerlin2();
ellipse ( posX2, posY2, 3, 3);
//p3 verde //fill(30,245,42, random (30,90));
fill(255, 255, 255, random ( 60,100));
calcularPerlin3();
ellipse ( posX3, posY3, 10, 10);
//p4 amarillo
//fill(244,245,30);
fill(255);
calcularPerlin4();
ellipse ( posX4, posY4, 3, 3);
//p5 rojo
//fill(245,30,30);
fill(255);
calcularPerlin5();
ellipse ( posX5, posY5, 3, 3);
stroke(255);
line(posX0, posY0, posX2, posY2);
line(posX2,posY2, posX3, posY3);
line(posX3, posY3, posX0, posY0);
line(posX4, posY4, posX5, posY5);
line(posX5, posY5, posX0, posY0);
line(posX4, posY4, posX2, posY2);
line(posX4, posY4, posX0, posY0);
line(posX5, posY5, posX3, posY3);
line(posX2, posY2, posX5, posY5);
line(posX3, posY3, posX4, posY4);
}
}
}
void calcularPerlin() {
// variaci´on,
variacionX0 += ruidoX0;
variacionY0 += ruidoY0;
// nueva posici´n
posX0 = noise(variacionX0) * width/1.6;
posY0 = noise(variacionY0) * height/1.6;
}
void calcularPerlin2() {
// variaci´on
variacionX2 += ruidoX2;
variacionY2 += ruidoY2;
// nueva posici´n
posX2 = noise(variacionX2) * width/2.6;
posY2 = noise(variacionY2) * height/2.6;
}
void calcularPerlin3() {
// variaci´on
variacionX3 += ruidoX3;
variacionY3 += ruidoY3;
// nueva posici´n
posX3 = noise(variacionX3) * width/1.3;
posY3 = noise(variacionY3) * height/1.3;
}
void calcularPerlin4() {
variacionX4 += ruidoX4;
variacionY4 += ruidoY4;
posX4 = noise(variacionX4) * width/2.2;
posY4 = noise(variacionY4) * height/3.4;
}
void calcularPerlin5() {
variacionX5 += ruidoX5;
variacionY5 += ruidoY5;
posX5 = noise(variacionX5) * width/3.7;
posY5 = noise(variacionY5) * height/3.4;
}
void entraNodo2() {
if (keyPressed) {
if (key == 'w') {
background(15);
//p1 violeta
calcularPerlinw();
//fill(255);
fill(245,30,217);
noStroke();
ellipse(posXw0, posYw0, 5, 5);
//p2 azul
fill(35,136,216);
//fill(255);
calcularPerlin2w();
ellipse ( posXw2, posYw2, 5, 5);
//p3 verde
fill(30,245,42);
calcularPerlin3();
ellipse ( mouseX, mouseY, 10, 10);
//p4 amarillo
fill(244,245,30);
//fill(255);
calcularPerlin4w();
ellipse ( posXw4, posYw4, 5, 5);
//p5 rojo
fill(245,30,30);
//fill(255);
calcularPerlin5w();
ellipse ( posXw5, posYw5, 5, 5);
stroke(255);
line(posXw0, posYw0, posXw2, posYw2);
line(posXw2, posYw2, mouseX, mouseY);
line(mouseX, mouseY, posXw0, posYw0);
line(posXw4, posYw4, posXw5, posYw5);
line(posXw5, posYw5, posXw0, posYw0);
line(posXw4, posYw4, posXw2, posYw2);
line(posXw4, posYw4, posXw0, posYw0);
line(posXw5, posYw5, mouseX, mouseY);
line(posXw2, posYw2, posXw5, posYw5);
line(mouseX, mouseY, posXw4, posYw4);
}
}
}
//NODO2 PERLINS
void calcularPerlinw() {
// variaci´on
variacionXw0 += ruidoXw0;
variacionYw0 += ruidoYw0;
// nueva posici´n
posXw0 = noise(variacionXw0) * width/2;
posYw0 = noise(variacionYw0) * height/2;
}
void calcularPerlin2w() {
//variaci´on
variacionXw2 += ruidoXw2;
variacionYw2 += ruidoYw2;
// nueva posici´n
posXw2 = noise(variacionXw2) * width/5;
posYw2 = noise(variacionYw2) * height/5;
}
void calcularPerlin3w() {
// Cambio variaci´on
variacionXw3 += ruidoXw3;
variacionYw3 += ruidoYw3;
// nueva posición
posXw3 = noise(variacionXw3) * width/3;
posYw3 = noise(variacionYw3) * height/3;
}
void calcularPerlin4w() {
variacionXw4 += ruidoXw4;
variacionYw4 += ruidoYw4;
posXw4 = noise(variacionXw4) * width/4.8;
posYw4 = noise(variacionYw4) * height/4.9;
}
void calcularPerlin5w() {
variacionXw5 += ruidoXw5;
variacionYw5 += ruidoYw5;
posXw5 = noise(variacionXw5) * width/2.9;
posYw5 = noise(variacionYw5) * height/2.7;
}