Willkommen auf unserem Seminar-Blog

Immer auf dem aktuellen Stand bleiben

Dieser Seminar-Blog befindet sich noch im Aufbau und wird in den kommenden Tagen entsprechend verfeinert.

Member Login

Lost your password?

Registration is closed

Sorry, you are not allowed to register by yourself on this site!

You must either be invited by one of our team member or request an invitation by email at viad.info {at} zhdk {dot} ch.

Lektion 7: Clock

27. Oktober 2011

Meine Uhr wird anhand von drei Kreisen, welche sich auf einem unterliegenden Ziffernblatt drehen, visualisiert. Der grösste Kreis stellt die Sekunden, der Mittlere die Minuten und der Kleinste die Stunden dar. Da durch die Wahl des 12-ziffrigen Ziffernblattes .am und .pm nicht ablesbar ist, integrierte ich die Bildschirmfarbe in die Darstellung mit ein. So ist diese bei Beginn des Tages weiss und am Ende schwarz.            Mein Code:
<pre>PShape vorlage_uhr;
PShape vorlage_uhr_2;
PImage vorlage_uhr_3;
PImage gruen;
PImage blau;
PImage dunkelblau;
float  rotAngle = 0.0;


void setup()
{
  size(510,500);
  smooth();

   // lade die svg files
  vorlage_uhr = loadShape("./images/vorlage_uhr.svg");
  vorlage_uhr_2 = loadShape("./images/vorlage_uhr_2.svg");
  vorlage_uhr_3 = loadImage("./images/vorlage_uhr_3.png");
  gruen = loadImage("./images/gruen.png");
  blau = loadImage("./images/blau.png");
  dunkelblau = loadImage("./images/dunkelblau.png");

  //frameRate(1);

}

  void draw()
{

   //seconds
  background(255-(hour()*(255/24)));

  //noStroke();
  //fill(44,219,98);
  //ellipse(165,175,250,250);
  image(gruen,165,175,250,250);

 pushMatrix();
    translate(165,175);
    rotate(radians(6)*second());
    shapeMode(CENTER);
    shape(vorlage_uhr,0,0,250,250);
popMatrix();


 //minutes
 image(blau,377,251.5,194,194);
  //noStroke();
  //fill(50,98,227);
  //ellipse(377,250.5,200,200);

  pushMatrix();
    translate(377,251.5);
    rotate(radians(6)*minute());
    shapeMode(CENTER);
    shape(vorlage_uhr_2,0,0,200,200);
 popMatrix();

 //hours
 //noStroke();
  //fill(21,61,100);
  //ellipse(240.5,361,148,148);
  image(dunkelblau,241,361.5,144,144);


  pushMatrix();
    translate(241,361.5);
    rotate(radians(30)*hour());
    imageMode(CENTER);
    image(vorlage_uhr_3,0,0,150,150);
 popMatrix();

}