nick /224 /pdftest 2

import processing.pdf.*;
squiggle[] s = new squiggle[20];
float[] sx = new float[20];
float[] sy = new float[20];
PGraphics pdf;

void setup(){
  size(200,200);

  pdf = createGraphics(4096, 1280, PDF, "output.pdf");
  smooth();
  for(int i = 0; i < s.length; i++){
    s[i] = new squiggle();
    s[i].x = random(pdf.width);
    s[i].y = random(pdf.height);
    s[i].rad = random(0,2*PI);
  }
  background(255);
  noLoop();
}


void draw(){
  pdf.beginDraw();
  pdf.stroke(0,20);
  for(int j = 0; j < 7000; j++){
    fill(0,0,255);
    rect(map(j, 0,7000, 0,width), 0,1,200);
    //println(j);
    for(int i = 0; i < s.length; i++){
      sx[i] = s[i].x;
      sy[i] = s[i].y;
    }
    float max_x = max(sx);
    float max_y = max(sy);
    float min_x = min(sx);
    float min_y = min(sy);
    for(int i = 0; i < s.length; i++){
      s[i].forward(1);
      pdf.line(map(s[i].x, min_x, max_x, 0,pdf.width), map(s[i].y, min_y, max_y, 0,pdf.height),cos(s[i].rad) * 1 + s[i].x, sin(s[i].rad) * 1 + s[i].y);
      s[i].rad += random(-.25,.25);
      //ellipse(s[i].x,s[i].y, 5,5);
    }
  }
  pdf.dispose();
  pdf.endDraw();
}

class squiggle{
  float rad;
  float x,y;
  void forward(float l){

    //line(x,y,cos(rad) * l + x, sin(rad) * l + y);
    x = cos(rad) * l + x;
    y = sin(rad) * l + y;
  }
} 

Page Details
Contact DANM  |  Digital Arts and New Media  |  Arts Division  |  Grad Division
login