• fullscreen
  • blowdry.pde
  • // P_2_0_01.pde
    // 
    // Generative Gestaltung, ISBN: 978-3-87439-759-9
    // First Edition, Hermann Schmidt, Mainz, 2009
    // Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni
    // Copyright 2009 Hartmut Bohnacker, Benedikt Gross, Julia Laub, Claudius Lazzeroni
    //
    // http://www.generative-gestaltung.de
    //
    // Licensed under the Apache License, Version 2.0 (the "License");
    // you may not use this file except in compliance with the License.
    // You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0
    // Unless required by applicable law or agreed to in writing, software
    // distributed under the License is distributed on an "AS IS" BASIS,
    // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    // See the License for the specific language governing permissions and
    // limitations under the License.
    
    /**
     * drawing a filled circle with lines.
     * 	 
     * MOUSE
     * position x          : length
     * position y          : thickness and number of lines
     * 
     * KEYS
     * s                   : save png
     * p                   : save pdf
     */
    
    import processing.pdf.*;
    boolean savePDF = false;
    
    PImage img;
    
    
    void setup(){
       size(800,500);
      img=loadImage("blowdry.jpg");
    }
    
    void draw(){
      background(255);
     
      if (savePDF) beginRecord(PDF, timestamp()+".pdf");
    
      strokeCap(SQUARE);
      smooth();
      noFill();
      background(255);
         image(img,0,0);
      translate(580,180);
    
      int circleResolution = (int) map(mouseY, 0,height, 2,80);
      float radius = mouseX-width/2 + 0.5;
      float angle = TWO_PI/circleResolution;
    
      strokeWeight(mouseY/20);
    
      beginShape();
      for (int i=0; i<=circleResolution; i++){
        float x = cos(angle*i) * radius;
        float y = sin(angle*i) * radius;
        line(0, 0, x, y);
        // vertex(x, y);
      }
      endShape();
    
      if (savePDF) {
        savePDF = false;
        endRecord();
      }
    }
    
    void keyPressed() {
      if (key=='s' || key=='S') saveFrame(timestamp()+"_##.png");
      if (key=='p' || key=='P') savePDF = true;
    }
    
    // timestamp
    String timestamp() {
      Calendar now = Calendar.getInstance();
      return String.format("%1$ty%1$tm%1$td_%1$tH%1$tM%1$tS", now);
    }
    
    
    
    

    code

    tweaks (0)

    about this sketch

    This sketch is running as Java applet, exported from Processing.

    license

    advertisement

    Krista de Leon

    blowdry

    Add to Faves Me Likey@!
    You must login/register to add this sketch to your favorites.

    You need to login/register to comment.