api:documentation:processing:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Beide Seiten der vorigen RevisionVorhergehende ÜberarbeitungNächste Überarbeitung | Vorhergehende Überarbeitung | ||
api:documentation:processing:start [2021/01/23 19:29] – Martin Pabst | api:documentation:processing:start [2023/06/11 15:26] (aktuell) – [Interaktion mit Maus und Tastatur] Martin Pabst | ||
---|---|---|---|
Zeile 42: | Zeile 42: | ||
} | } | ||
</ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | |||
+ | <WRAP left round tip 80%> | ||
+ | Die Programmierung mit Processing unterscheidet sich von der Grafikprogrammierung, | ||
+ | * Es gibt nur ein kurzes Hauptprogramm, | ||
+ | * Es gibt keine grafischen Objekte (z.B. '' | ||
+ | * Das '' | ||
+ | </ | ||
+ | |||
+ | ===== Zustandsorientiertes Zeichnen von grafischen Objekten ===== | ||
+ | <WRAP left round info 80%> | ||
+ | Diese Methoden kannst Du verwenden, um die Einstellungen für Füllfarbe, Rahmenfarbe usw. des '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | |||
+ | Hier eine Auswahl der Methoden zum Zeichnen: | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | * '' | ||
+ | </ | ||
+ | |||
+ | |||
+ | < | ||
+ | |||
+ | <div class=" | ||
+ | |||
+ | <script type=" | ||
+ | new HelloWorld().main(); | ||
+ | |||
+ | public class HelloWorld extends PApplet { | ||
+ | |||
+ | /** | ||
+ | * Die Methode setup wird nach dem Initialisieren des Grafiksystems von main aufgerufen. | ||
+ | */ | ||
+ | | ||
+ | createCanvas(800, | ||
+ | background(80, | ||
+ | |||
+ | strokeWeight(10); | ||
+ | for(int i = 0; i < 10; i++) { | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | } | ||
+ | } | ||
+ | |||
+ | }</ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | | ||
+ | ===== Animationen erstellen mit Processing ===== | ||
+ | <WRAP center round info 60%> | ||
+ | Die '' | ||
+ | </ | ||
+ | |||
+ | |||
+ | < | ||
+ | |||
+ | <div class=" | ||
+ | |||
+ | <script type=" | ||
+ | new AnimationDemo().main(); | ||
+ | |||
+ | class AnimationDemo extends PApplet { | ||
+ | |||
+ | float t = 0; | ||
+ | |||
+ | | ||
+ | createCanvas(1000, | ||
+ | fill(150, 150, 150, 120); | ||
+ | strokeWeight(20); | ||
+ | } | ||
+ | |||
+ | | ||
+ | background(20); | ||
+ | | ||
+ | t += 0.04; | ||
+ | float r = 300; | ||
+ | |||
+ | for(int i = 0; i < 10; i++) { | ||
+ | | ||
+ | float t1 = t + i * 0.4; | ||
+ | |||
+ | | ||
+ | float mx = 500 + r * cos(t1); | ||
+ | float my = 600 + r * sin(t1); | ||
+ | | ||
+ | |||
+ | t1 += 3.1; | ||
+ | | ||
+ | mx = 500 + r * cos(-t1); | ||
+ | my = 400 + r * sin(-t1); | ||
+ | |||
+ | | ||
+ | |||
+ | } | ||
+ | } | ||
+ | }</ | ||
+ | |||
+ | </ | ||
+ | |||
+ | </ | ||
+ | | ||
+ | ===== Interaktion mit Tastatur ===== | ||
+ | < | ||
+ | |||
+ | <div class=" | ||
+ | |||
+ | <script type=" | ||
+ | new Pong().main(); | ||
+ | |||
+ | class Pong extends PApplet { | ||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | | ||
+ | |||
+ | | ||
+ | createCanvas(800, | ||
+ | } | ||
+ | |||
+ | | ||
+ | background(0); | ||
+ | schläger1y += vySchläger; | ||
+ | fill(" | ||
+ | rect(0, schläger1y - 50, 20, 100); | ||
+ | | ||
+ | ballX += vxBall; | ||
+ | ballY += vyBall; | ||
+ | |||
+ | if(ballX > 790) vxBall *= -1; | ||
+ | if(ballY < 10 || ballY > 590) vyBall *= -1; | ||
+ | |||
+ | if(ballX < 30 && Math.abs(ballY - schläger1y) < 100) { | ||
+ | | ||
+ | } | ||
+ | |||
+ | if(ballX < 0) { | ||
+ | | ||
+ | | ||
+ | } | ||
+ | | ||
+ | fill(" | ||
+ | circle(ballX, | ||
+ | } | ||
+ | |||
+ | | ||
+ | if(key == ' | ||
+ | | ||
+ | } | ||
+ | if(key == ' | ||
+ | | ||
+ | } | ||
+ | } | ||
+ | |||
+ | | ||
+ | vySchläger = 0; | ||
+ | } | ||
+ | |||
+ | }</ | ||
</ | </ |
api/documentation/processing/start.txt · Zuletzt geändert: 2023/06/11 15:26 von Martin Pabst