• Keine Ergebnisse gefunden

PROCESSING PROCESSING

N/A
N/A
Protected

Academic year: 2022

Aktie "PROCESSING PROCESSING"

Copied!
12
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

PROCESSING PROCESSING

EINE EINFÜHRUNG IN DIE INFORMATIK EINE EINFÜHRUNG IN DIE INFORMATIK

Created by Michael Kirsch & Beat Rossmy

(2)

INHALT INHALT

1.

1.

2.

3.

4.

5.

Stoff der Vorlesung

Processing Basics float

for else mouse

2.

1.

2.

3.

Übung

Aufgabe 1 Aufgabe 2 Input

(3)

STOFF DER VORLESUNG

STOFF DER VORLESUNG

(4)

PROCESSING BASICS PROCESSING BASICS

Einzeiliger Kommentar Mehrzeiliger Kommentar Inkrementieren

Dekrementieren

Fensterbreite Fensterhöhe

// das ist ein einzeiliger Kommentar

/* das ist

ein mehrzeiliger Kommentar */

x = x+1;

x += 1;

x++;

x = x-1;

x -= 1;

x--;

w = width;

h = height;

(5)

FLOAT FLOAT

float zeichnet Variablen aus, die Gleit komma -

zahlen enthalten.

Achtung: diese markieren - anders als im deutsch - sprachigen Raum üblich - ihre Nach komma stellen mit einem Punkt!

Vorsicht beim Mischen von Datentypen ist

geboten!

int a = 5;

int b = 2;

float z = a/b;

println(z); // -> 2.0 !!!

float c = 5;

float d = 2;

z = c/d;

println(z); // -> 2.5

int e = 5;

float f = 2;

z = e/f;

println(z); // -> 2.5 !!!

float g = 5;

int h = 2;

z = g/h;

println(z); // -> 2.5 !!!

(6)

FOR FOR

for leitet eine Schleife ein.

In den () wird die Wieder - holung des Rumpfes

beschrieben. Angefangen bei n bis (hier) 5 im An - gegebenen Intervall (++).

{} enthalten die

auszuführenden Befehle.

void setup () { size(400,400);

for (int n=0; n<5; n++) { float x = random(width);

float y = random(height);

ellipse(x,y,5,5);

} }

(7)

ELSE ELSE

if bedingt das Ausführen einzelner oder mehrerer Befehle abhängig von einer Aussage.

Ist die Bedingung von if nicht erfüllt, wird else if

überprüft.

Die Befehle im Rumpf von else treten nur ein, sind die Aussagen von if und else if falsch.

if (x == 100) {

println("x ist genau 100");

}

else if (x == 0) { println("x ist 0");

}

else {

println("x ist weder 100 noch 0");

}

(8)

MOUSE MOUSE

Die Variable mousePressed spiegelt den Status der linken Maustaste wieder. true für gedrückt und false für

ungedrückt.

Ebenso enthalten mouseX und mouseY die aktuellen

Koordinaten des Mauszeigers.

if (mousePressed) { background(0);

}

ellipse(mouseX, mouseY, 100,100);

(9)

ÜBUNG

ÜBUNG

(10)

AUFGABE 1 AUFGABE 1

Ein Quadrat wächst und schrumpft.

// deklariere die Variablen: x & y des Quadrats

// deklariere die Variablen: Seitenlänge und Faktor (anfangs 1 später -1) void setup () {

// lege Größe fest

// initialisiere Variablen }

void draw () {

// verändere Seitenlänge um Faktor

// überprüfe ob Seitenlänge zu groß/klein und reagiere // berechne Mittelpunkt des Quadrats

// zeichne Quadrat }

(11)

AUFGABE 2 AUFGABE 2

Finde alle 5 Fehler.

int x; v = 10;

void setup () { size(800,600);

x = 50;

}

void draw () { x = x+v;

if (x<0) { v = 10;

x = 50;

}

if (x>750) { v = -10;

x = 700 } if (v>0) {

ellipse(x,300,100,100);

if (v<0) {

rect(x,350,100,100);

}

background(0);

}

(12)

INPUT INPUT

Versuche mouseX für Farben und Größen einzusetzen. Wie können Werte reguliert werden?

void setup () { size(600,400);

}

void draw () { background(0);

// z.B. setze Füllfarbe abhängig von Maus. Wie benutzen wir Werte > 255?

// zeichne Objekte }

Referenzen

ÄHNLICHE DOKUMENTE

Bathymetry data: Atlas Hydrosweep DS-2 Position (GGA): Trimble MS750 GPS Heading: MINS ringlaser gyro Speed: MINS ringlaser gyro Heave: TSS HS-50 heave sensor Pitch/Roll:

Created by Michael Kirsch &amp; Beat Rossmy... Sto

Eine schriftliche Prüfung ndet Ende des Semesters statt, in der der Sto der Vorlesung geprüft wird.. Der Termin wird

Neue Position bei Tastendruck (gezeichnet wenn gehalten). // deklariere Variablen zum Speichern

Created by Michael Kirsch &amp; Beat Rossmy... Sto

public ColorCircle (int x, int y, char c) { // Aufruf des Konstruktors der Elternklasse.. AUFGABE 2

static markiert Felder oder Methoden einer Klasse, die auch ohne das Erzeugen eines Objekts existieren. Diese

Erzeuge in der main Methode ein Objekt der Klasse Ball und rufe auf diesem Objekt innerhalb einer Schleife move und plot auf. Lasse sich die Schleife 10.000