Lernpfad:Programmierung mit Javascript und p5js/Die zwei Funktionen setup und draw: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Thi (Diskussion | Beiträge) |
Thi (Diskussion | Beiträge) |
||
Zeile 15: | Zeile 15: | ||
function setup() { | function setup() { | ||
createCanvas(100, 100); | createCanvas(100, 100); | ||
frameRate( | frameRate(10); //Die draw-Funktion wird nur einmal pro Sekunde aufgerufen. | ||
} | } | ||
Zeile 29: | Zeile 29: | ||
===Aufgaben=== | ===Aufgaben=== | ||
Ändere das obige Programm so um, | Ändere das obige Programm so um, | ||
# dass die draw-Funktion | # dass die draw-Funktion 1 mal pro Sekunde aufrufen. Beobachte was mit der Ausgabe passiert. | ||
# dass die draw-Funktion nur einmal aufgerufen wird. | # dass die draw-Funktion insgesamt nur einmal aufgerufen wird. | ||
====Für Fortgeschrittene==== | ====Für Fortgeschrittene==== | ||
{{Collapse:Start}} | {{Collapse:Start}} | ||
Veränder das Programm so, dass ein Kreis bei Cursor-Position gezeichnet wird. Welche Auswirkung haben Änderungen der folgenden Funktionen auf die Ausführung des Programms | Veränder das Programm so, dass ein Kreis bei Cursor-Position gezeichnet wird. <br /> | ||
#'''frameRate()''' | Welche Auswirkung haben Änderungen der folgenden Funktionen auf die Ausführung des Programms? | ||
#'''noLoop()''' | # Ändere den Wert ''w'' in '''frameRate(''' ''w'' ''')'''. | ||
# | # Füge '''noLoop()''' in der setup-Funktion hinzu. | ||
# Entferne die Zeile '''background(220);''' | |||
{{Collapse:End}} | {{Collapse:End}} |
Aktuelle Version vom 26. Dezember 2018, 23:26 Uhr
Die zwei Funktionen setup und draw
Alle Projekte in p5js heißen sketches und beinhalten mindestens zwei Funktionen:
- draw: wird standardmäßig 30 mal in der Sekunde aufgerufen. Die Zeichen-Funktionen werden in den geschweiften Klammern von draw aufgerufen
- background(220); zeichnet zunächst den Hintergrund über die alte Zeichnung. (0 steht für schwarz, 255 für weiß, alle Werte dazwischen ergeben grau)
- console.log( t ) gibt einen Text t in der Konsole aus.
- text( t,x,y ) gibt den Text t auf dem Zeichenfeld aus. Die Position des Textes wird mit x und y festegelegt.
- setup: wird genau einmal am Anfang der Ausführung aufgerufen. Hier kann man ...
- z.B. das Zeichenfeld verändern. createCanvas(200, 200); erstellt z.B. ein Zeichenfeld mit 200 x 200 Pixeln.
- mit der Funktion frameRate( r ) einstellen, wie oft(r Mal) die draw-Funktion in der Sekunde aufgerufen wird.
- mit der Funktion noLoop() einstellen, ob die draw-Funktion wiederholt aufgerufen wird oder nur einmal aufgerufen werden soll.
Das folgende Beispiel zeigt noch einmal die Verwendung der beiden Funktionen:
function setup() {
createCanvas(100, 100);
frameRate(10); //Die draw-Funktion wird nur einmal pro Sekunde aufgerufen.
}
function draw() {
background(220);
console.log(frameCount); //console.log gibt einen Text in der Konsole aus.
text(frameCount, 20,40); //Gibt einen Text auf dem Zeichenfeld aus.
}
Erläuterungen zum Programm:
- In Zeile 3 wird die Wiederholungsgeschwindigkeit für das Zeichenen der draw-Funktion eingestellt.
- In Zeile 8 wird mit dem Wert frameCount ausgegeben, wie oft die Funktion draw schon aufgerufen wurde.
Aufgaben
Ändere das obige Programm so um,
- dass die draw-Funktion 1 mal pro Sekunde aufrufen. Beobachte was mit der Ausgabe passiert.
- dass die draw-Funktion insgesamt nur einmal aufgerufen wird.
Für Fortgeschrittene
Veränder das Programm so, dass ein Kreis bei Cursor-Position gezeichnet wird.
Welche Auswirkung haben Änderungen der folgenden Funktionen auf die Ausführung des Programms?
- Ändere den Wert w in frameRate( w ).
- Füge noLoop() in der setup-Funktion hinzu.
- Entferne die Zeile background(220);