Bisher haben wir unsere Objekte immer auf einem ganz normalen klassischen
Koordinatensystem angeordnet, also mit x und y-Achse. Daneben gibt es aber durchaus andere
Möglichkeiten die Objekte positionieren zu können. Ein sehr interessantes System,
ist das sogenannte Polar-Koordinatensystem. Ausgehend von einem Nullpunkt in der Mitte,
werden Punkte auf Kreislinien beschrieben. Diese definieren sich darüber, dass wir einen Radius
haben und wir haben einen Winkel und darüber können wir uns dann sozusagen x/y-Koordinate
auf einer Kreislinie eines Kreises mit dementsprechenden Radius zurückgeben
lassen. Die Formel dafür ist relativ einfach. Die habe ich euch auch hier unter das Video
gesetzt. Also um die X-Koordinate für unseren Kreis zu bekommen, sagen wir einfach Radius mal
Cosinus von Radians des Winkels. Radians hatten wir am Anfang mal. Das ist einfach Math.PI durch
180 und dann mal dem Winkel. Also zwei mal PI sind sozusagen 360 Grad und das sozusagen die
Formel um das einfach umzurechnen. Wenn wir das jetzt mal in einen Code überführen. Wir hatten
ja gerade unsere beginShape, mache jetzt einfach mal FOR-Loop wo wir ganz viele Punkte auf unsere
Kreislinie setzen. Also wir sagen "angle" das ist sozusagen der Winkel mit dem gehen wir jetzt
durch. Und wir wollen eine Runde machen, also angle kleiner gleich 360 und dann wollen wir immer
jeweils 15 Grad das Ganze weiterschieben, also alle 15 Grad einen Punkt setzen.
"endShape". Und zu den Radius hier noch definieren.
150. Und müssen jetzt hier lediglich noch unsere vertices (vertex) zeichnen.
Wenn ich das jetzt abspeichern, dann sehen wir, dass hier der kreis gezeichnet wurde. Weil der
Mittelpunkt in unserem Nullpunkt oben links in der Ecke sitzt, müssen wir einfach noch
die Hälfte der Breite unseres Canvas dazu addieren und die Hälfte der Höhe, also 200,
um das Ganze sozusagen in die Mitte zu schieben. Und damit das Ganze auch geschlossen ist,
setzen ich hier noch CLOSE rein. Und dann jetzt zum Beispiel hier das ganze auf 30
Grad hochdrehen, dann sehen wir, dass die Auflösung geringer wird. Könnten natürlich
das auch kleiner machen, also wir alle zehn Grad. Dann wird es runder. Und natürlich muss
der Radius auch nicht festgesetzt sein, wir könnten theoretisch auch unseren Radius jetzt
hier mit in die Schleife rein nehmen und dann mit "random" zufällige Werte hier generieren.
Und haben jetzt sozusagen Punkte die wiederum den Mittelpunkt drumherum
sozusagen mit einem zufälligen Wert generiert werden. Oder wir könnten das zum Beispiel auch
mit einem langsam ansteigenden Radius machen und immer fünf dazu addieren.
Wir sehen also wie so eine kleine Schnecke generiert wird. Würde ich das mal ein bisschen
kleiner machen. Dann kann man es besser sehen. Wenn man das CLOSE jetzt hier wegnimmt. Und dann
sieht es noch ein bisschen mehr nach Schleife aus. Könnten jetzt hier zum Beispiel auch das Ganze
über mehrere Runden laufen lassen. Bekommen dann halt so eine richtige Schnecke. Dieses
Polar-Koordinatensystem ist relativ einfach zu berechnen, aber man kann echt schöne spannende
Sachen damit bauen. Gerade wenn man solche runden Shapes bauen möchte oder wenn man
sozusagen auf den mittelpunkt konzentriert in einem Layout Objekte positionieren möchte