Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Nehmen wir Beispiel 1 und erweitern dies mit den Ereignissen:

Code Block
int length1 = 0;
int length2 = 0;

void setup() {
  size(300, 300); // define window size
smooth  background(0); // define background colour
  stroke(255, 255, 255);
}
  // define line colour
}
void draw() {
  background(0);
  length1  strokeWeight(1)= mouseX;
  length2 = mouseY;
  line(100, 10, 100,150 length1); // draw a line
  line(150, 10, 150,200 length2);
  line(200, 10, 200, 250);

   fill(0, 0, 0); // fill colour
  strokeWeight(5); // line thickness
  ellipse(100,150 length1, 50, 50); // draw an ellipse
  ellipse(150,200 length2, 50, 50); // draw an ellipse
  noFill(); // turn off fill
  ellipse(200, 250, 50, 50); // draw an ellipse
}

...


In diesem Programm nutzen wir zwei Funktionen:

...

Diese Funktionen haben keine Parameter und auch keinen Rückgabewert, daher steht an der Stelle des Rückgabe Typs einfach nur ‘void‘. Die Funktionsnamen sind Namen die Processing kennt, daher ruft Processing diese Funktionen auf,  sobald das entsprechende Ereignis eintrifft.

Weitere Funktiosnbeispiel

Diese Beispiel zeigt wie man Funktionen mit Rückgabewerte schreibt.

Code Block
void setup()
{
  println(addition(1,2));
  println(addition(2,10));
}
 
int addition(int parameter1, int parameter2)
{
  return parameter1 + parameter2;
}

 


Dies Beispiel zeigt wie man Funktionen nutzen kann um den Code leserlicher und einfacher Gestalten kann(Stichwort Modularisierung).

Code Block
void setup()
{
  size(300,300);
  smooth();
  stroke(255,255,255);
  noFill();
}
 
void draw()
{
  background(0);
 
  bommel(100,10,140,50);
  bommel(150,10,190,50);
  bommel(200,10,240,50);
}
 
void bommel(int x,int y,int length,int size)
{
  strokeWeight(1);
  line(x,y,x,y+length);
  strokeWeight(5);
  ellipse(x,y+length,size,size);
}

...


Und hier unser erstes interaktive Programm:

Code Block
void setup()
{
  size(300,300);
  background(0);
}
 
void draw()
{}
 
void mousePressed()
{
  println("x:" + mouseX + ", y:" + mouseY);
}


Aufgabe

Erstelle ein Programm in welchem ein Kreis dem Mauszeiger folgt