domingo, 17 de septiembre de 2017

Bobby Chiu (artista favorito)

Bobby Chiu me gusta mucho porque es un artista independiente pero que ha trabajado para grandes compañías como Disney y no ha perdido su autonomía. Es un modelo a seguir para mi por como ha llevado su vida. Abrió su propia escuela en línea pues no cree que la educación debería costar tanto dinero y ha podido vivir de su trabajo creativo sin sacrificar en lo que cree, o lo que le gustaría hacer. Además es muy generoso con su conocimiento, pues tiene un canal en Youtube donde tienes vídeos con consejos para jóvenes artistas.

Canal de Youtube: https://www.youtube.com/channel/UCKfG25IfoxX8AT0JjmG2H0Q





miércoles, 13 de septiembre de 2017

Programa 5

void setup(){
  size(1050,700);
  background(100,70,200);
  smooth(); //suaviza los trazos
}
void draw(){
  translate(frameCount*1,250); //ubicacion de figura en el espacio y líneas que traza el rectangulo
  rotate(radians(frameCount*.5)); //velocidad con la forma que hace la figura
  float sclSize = sin(radians(frameCount*3.5));
  scale(map(sclSize, -1,.3,7,6));
  drawFigure();
}
void drawFigure() {
  noFill(); {
  stroke(0,10,10,10);
  rect(-5, -10, 120, 80);
  }
}
 
  Ejemplos:








miércoles, 6 de septiembre de 2017

Mi programa 4 (Experimentación)

Encontré un código llamado "pulses" en procesing examples, y me gustó mucho. Dibujaba sobre el fondo cuando pulsabas el mousse. Estuve modificándolo y descubriendo que hacía cada línea.

Código:


/**
 * Pulses.
 *
 * Software drawing instruments can follow a rhythm or abide by rules independent
 * of drawn gestures. This is a form of collaborative drawing in which the draftsperson
 * controls some aspects of the image and the software controls others.
 */

int angle = 0;

void setup() {
  size(1000, 1000); //tamaño pantalla
  background(100,random(20,70),100); //color fondo (comando random cambia el color cada vez que lo abro)
  noStroke();
  fill(0, 102);
}

void draw() {
  // Draw only when mouse is pressed
  if (mousePressed == true) {
    angle += 5; //modifica el centro del ciurculo dibujado
    float val = cos(radians(angle)) * 17.0; //tamaño *00.0 de circulos
    for (int a = 0; a < 360; a += 1) { //forma de la flor
      float xoff = cos(radians(a)) * val;
      float yoff = sin(radians(a)) * val;
      fill(random(0,255),random(10,80),random(30,50)); //instruccion controla color dibujo
      ellipse(mouseX + xoff, mouseY + yoff, val, val); //dibuja con el mouse
    }
    fill(random(20,30),random(0,255),random(100,200)); //color segunda figura
    rect(mouseY, mouseY, 3, 5); //tamaño segunda figura y direccion
  }
}

Ejemplos:








miércoles, 30 de agosto de 2017

Mi programa 3

//declaracion de variables
float posX[];
float posY[];
int matados[];
float angulos[];
int numrect = 500;
int puntaje = 0;
PFont miletrica;

//setup o configuracion
void setup() {
  size(400,400,P3D);
  background(255);
  noStroke();
  posX = new float[numrect];
  posY = new float[numrect];
  angulos = new float[numrect];
  matados = new int[numrect];
  for(int i=0;i<numrect;i = i+1) {
    posX[i] = random(380);
    posY[i] = random(30);
    matados[i] = 0;
    angulos[i] = 0;
  }
  //miletrica = loadfont("Univers45.vlw");
  //textFont(miletrica, 18);
}

//loop
void draw(){
  puntaje = 0;
  background(225);
  for(int i=0;i<numrect; i = i+1){
    posY[i] = posY[i] + random(0.01*i);
    angulos[i] = angulos[i] + random(0.001*i);
  }
 
  //funciones
  for(int i=0; i<numrect;i =i+1){
    if(matados[i] ==0){
      pushMatrix();
      translate(posX[i],posY[i]);
      rotate(angulos[i]);
      if(dist(mouseX, mouseY, posX[i], posY[i])<20){
        fill(230,0,130,150);
        matados[i] = 1;
        rect(0,0,20,20);
       
      }
      else{
        fill(170+random(-60,60),130+random(-80,80),0);
        rect(0,0,10,10);
      }
     
   popMatrix();
    }
  }
  for(int i=0;i<numrect; i = i+1){
    puntaje = puntaje + matados[i];
  }
  println(puntaje);
  fill(230,0,130);
  text("el puntaje es" +puntaje,10,390); }
 
 
  Ejemplos:




Primer programa (Círculo)

 ArrayList points;
int counter;
double step, theta;
PVector dummy;


void setup(){
  frameRate(90);
  size(500,500);
  background(150,3,200);
  stroke(50,100,45); fill(10,3,255);
  points = new ArrayList();
  dummy = new PVector(0,0);
  counter=0;
  theta=0;
  step = Math.PI/40;
}

void draw() {
  float actx = 0;
  float acty = 0;
    float h = 150;
    float k = 150;
    float r = 50;
    background(200,60,200);
    actx=h;
    acty=h;
    //for(float theta=0;  theta < 2*Math.PI;  theta+=step)
    if(theta<2*Math.PI)
     { float x = (float)(h + r*Math.cos(theta));
       float y = (float)(k - r*Math.sin(theta));
       //point(x,y);
       pint p = new pint(x,y,counter); points.add(p);
       ellipse(x,y,90,90);
       counter++;
       theta+=step;
   trace();
}
}
void trace(){
  for(int i=0; i<points.size()-7;i++){
    pint p1 = (pint) points.get(i);
    pint p2 = (pint) points.get(i+1);
    if(p1.index==p2.index-1)
      line(p1.x,p1.y,p2.x,p2.y);
  }
}
class pint extends PVector{
  float x,y;
  float index;

  pint(float x_, float y_, float i){
    x = x_;
    y = y_;
    index = i;
  }

}

Ejemplos: