~~NOTOC~~
====== Transformationen ======
===== Aufgabe 1: Translationen, Rotationen und Streckungen (am Beispiel eines Torus) ====
Ein **Torus** ist eine Art
* Veloschlauch (genau dessen äussere Oberfläche).
Alternativ ist ein Torus die Oberfläche eines Rettungsrings oder eines Donuts.
Öffne die folgende Datei im POV-Ray-Editor.
{{ :lehrkraefte:snr:mathematik:klasse-2:2022-23:povray:torus-fuer-trafos.pov |}}
* Verstehe, wie das Objekt ''torus'' definiert ist.
* Translation = Verschiebung: Mit dem Befehl ''translate'' können Objekte verschoben werden. Teste dies, indem du direkt hinter der Zeile mit den vielen Sternen die folgende Zeile ergänzt:
translate <0, -2, 3>
* Teste auch Verschiebungen um andere Vektoren, um den Befehl ''translate'' besser zu verstehen.
* Rotation = Drehung: Mit dem Befehl ''rotate'' können Objekte gedreht werden. Teste dies, indem du direkt hinter die Zeile mit den vielen Sternen die folgende Zeile ergänzt (lösche zuvor alle ''translate''-Befehle):
rotate <30, 0, 0> // Drehung um die x-Achse um 30 Grad und um 0 Grad um die anderen beiden Achsen.
* Teste auch Drehungen um andere Winkel und um andere Koordinatenachsen, um den Befehl ''rotate'' besser zu verstehen.
* Erklärung:
* Der Befehl ''rotate '' dreht zuerst um ''alpha'' Grad um die x-Achse, dann um ''beta'' Grad um die y-Achse und am Ende um ''gamma'' Grad um die z-Achse.
* Alle Drehungen sind **rechtsdrehend**; dies bedeutet: Wenn der Daumen der **rechten** Hand in Richtung der Drehachse zeigt, wird das Objekt in Richtung der Finger um die Achse gedreht.
* Empfehlung: Jeweils nur um eine Koordinatenachse drehen
* Skalierung = Streckung: Mit dem Befehl ''scale'' können Objekte gestreckt werden. **Streckzentrum ist der Ursprung des Koordinatensystems.** Teste dies, indem du direkt hinter der Zeile mit den vielen Sternen die folgende Zeile ergänzt (lösche zuvor alle ''rotate''-Befehle):
scale 0.5
* Teste auch andere Streckfaktoren.
==== Aufgabe 1 ====
(Ausgehend von der in der vorigen Aufgabe verwendeten Datei:)
Verwende die gerade erlernten Transformationsbefehle ''translate'', ''rotate'' und ''scale'', um eine Szene mit den folgenden Objekten zu erstellen. Sie enthält:
* einen ersten Torus (mit Schachbrettmuster wie in der vorigen Aufgabe), der **auf** der $x$-$y$-Ebene liegt (d.h. diese berührt);
* einen zweiten, genauso grossen Torus, der aus dem ersten durch Verschiebung in $y$-Richtung hervorgeht und diesen von aussen berührt.
* einen dritten Torus (ebenfalls auf der $x$-$y$-Ebene), der beide Tori von aussen berührt. Dieser Torus soll per scale erzeugt werden, so dass er genauso viele Schachbrettfelder hat wie die anderen beiden Tori.
**Bonus**
- Erstelle eine neue Szene aus zwei ineinander verschlungenen Tori: Der erste Torus liegt in beliebiger Lage, der zweite "umschlingt" diesen. Zusatz: Wähle die Radien so, dass der zweite Torus das "Loch" des ersten Torus ganz ausfüllt.
- Erstelle eine neue Szene aus mehrenen aufeinanderliegenden Tori, so dass der nächsthöhere Torus jeweils aus dem darunterliegenden durch Streckung um einen fixen Faktor (etwa 0.8) hervorgeht. Hinweis: Du wirst Pythagoras verwenden müssen.