top of page

Segunda clase manejando un poco de Processing

  • Foto del escritor: Matías García
    Matías García
  • 15 oct 2020
  • 2 Min. de lectura

En primer instancia, se nos plantea realizar un ejercicio, basado en este enlace:


A medida que vamos dando click en nuestra pantalla, se va trazando una línea recta de color rojo, desde el punto A al punto B.


Código:


int xinicio =0;

int yinicio =0;


void setup(){

size(600, 600);

background(255);

}


void draw(){}


void mousePressed(){

stroke(255, 0, 0);

line(xinicio, yinicio, pmouseX, pmouseY);

xinicio= mouseX;

yinicio= mouseY;

}


void keyPressed(){

if (keyPressed) {

if (key == 'f' || key == 'F' ){

background(255);

}

}

}




En un segundo ejercicio realizado, bastante difícil personalmente. Generamos un canva con circulos de colores y al pasar el mouse por la pantalla, estos se van a comportar de una manera particular. En este código empleado, se van a ir moviendo todos, pero los circulos que estén próximos al cursor del mouse, se van a juntar bastante entre ellos.


Código:


float angle = 10;

int num0fXTiles =10;

int num0fYTiles =10;

int spacingX;

int spacingY;

int startingX;

int startingY;


void setup(){

size(500, 500);

spacingX= width/num0fXTiles;

spacingY= height/num0fYTiles;

startingX= spacingX/2;

startingY= spacingY/2;

noStroke();

rectMode(CENTER);

fill(0);

}


void draw(){

background(255);

for (int x=startingX; x<width; x=x+spacingX)

{

for (int y=startingY; y<height; y=y+spacingY)

{

int locX = x;

int locY = y;

pushMatrix();

float angle= atan2(mouseY-locY, mouseX-locX) + radians(160);

translate(locX, locY);

rotate(angle);

float d = dist(mouseX, mouseY, locX, locY);

float c = map(d, 0, width, 0, 1);

fill(lerpColor(color(255,0,0), color(0,0,255), c));

ellipse(-40, 0, 30, 30);

popMatrix();

}

}

}



Por último, realizamos un ejercicio, en el cual alojamos una imagen cualquiera dentro de nuestro programa, y le aplicamos filtros tal como lo hace Instagram. Estos filtros que el programa va a aplicar, van de la mano con lo que nosotros le indiquemos al código.


Código:


PImage img, img2;


void setup() {

size(1200,400);

//Carga la imagen y los pixeles

img = loadImage("spiderman.jpg");

img.loadPixels();

for(int i=0; i<img.pixels.length; i++) {

color c=img.pixels[i];

img.pixels[i] = color(red(c)+101, green(c)-32, blue(c)-51);

}

img.updatePixels();

img2 = loadImage("spiderman.jpg");

img2.filter(GRAY);

}


void draw(){

image(img,0,0);

image(img2,width/2,0);

}



Kommentarer


  • Instagram
  • Facebook
  • Twitter
  • YouTube
  • Pinterest

© 2020 Matías García. Estudiante de Ingeniería Audiovisual

bottom of page