Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
|
trigonometrie [2024/07/19 00:42] 127.0.0.1 Externe Bearbeitung |
trigonometrie [2025/10/23 09:55] (aktuell) jango [Links] |
||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| + | [[todo]] | ||
| + | Die Trigonometrie beschäftigt sich hauptsächlich mit den trigonometrischen Funktionen, die das Verhältnis der Seitenlängen eines rechtwinkligen Dreiecks zu den Winkeln in diesem Dreieck beschreiben. Trigonometrie ist ein wesentlicher Bestandteil von [[gameengine|Game Engines]]. Die drei wichtigsten trigonometrischen Funktionen sind: | ||
| + | |||
| + | * Sinus (sin): Das Verhältnis der Länge der dem Winkel gegenüberliegenden Seite zur Hypotenuse des Dreiecks. | ||
| + | * Kosinus (cos): Das Verhältnis der Länge der anliegenden Seite zur Hypotenuse des Dreiecks. | ||
| + | * Tangens (tan): Das Verhältnis des Sinus zum Kosinus eines Winkels. | ||
| + | |||
| + | Zusätzlich zu diesen Funktionen gibt es auch ihre inversen Funktionen, den Arcussinus (asin), Arkuskosinus (acos) und Arkustangens (atan), die das Verhältnis von Seitenlängen zu Winkeln berechnen. | ||
| + | |||
| + | |||
| + | Es gibt die ebene und die sphärische Trigonometrie. Der Kosinussatz wird auch als trigonometrischer Pythagoras bezeichnet. Das rührt daher, daß mit ihm wie beim Satz des Pythagoras eine fehlende Dreieckseite berechnet werden kann, allerdings im Gegensatz zum Pythagoras, der ja nur für rechtwinklige Dreiecke gilt, **in jedem beliebigen Dreieck**. Siehe auch [[vektor|Vektor]] und [[https:// | ||
| + | |||
| + | {{einheitskreis.png}} | ||
| + | |||
| + | * Innenwinkelsumme: | ||
| + | * Ankathete - am Winkel - Cosinus | ||
| + | * Gegenkathete - gegenüber vom Winkel - Sinus | ||
| + | * sin und cos müssen < 1.0 sein - tan nicht! | ||
| + | |||
| + | {{sincohtan.png}} | ||
| + | |||
| + | **Merke** Das Längenverhältnis aus Gegenkathete(alpha) und Hypotenuse ist sin(alpha) | ||
| + | |||
| + | {{dreieck_trigonometry.png}} | ||
| + | |||
| + | < | ||
| + | sin(a) = Gegenkathete / Hypothenuse => G = H * sin(a) | ||
| + | cos(a) = Ankathete / Hypothenuse => A = H * cos(a) | ||
| + | tan(a) = Gegenkathete / Ankathete | ||
| + | </ | ||
| + | |||
| + | =====Spieleentwicklung===== | ||
| + | |||
| + | ====Bewegungen==== | ||
| + | |||
| + | Die Berechnung von Bewegungen mit Vektoren ist in der Spieleentwicklung sehr gebräuchlich und ermöglicht eine präzise Steuerung von Objekten im Raum. Hier sind einige grundlegende Schritte zur Berechnung von Bewegungen mit Vektoren: | ||
| + | |||
| + | * Vektorrepräsentation: | ||
| + | * Geschwindigkeitsvektor: | ||
| + | * Aktualisierung der Position: Um die Position des Objekts zu aktualisieren, | ||
| + | * Beschleunigung: | ||
| + | * Kollisionserkennung und -behandlung: | ||
| + | |||
| + | Bei der Berechnung von Bewegungen mit Vektoren können trigonometrische Funktionen verwendet werden, um die Richtung und Geschwindigkeit von Objekten zu steuern. Zusätzlich können Konzepte wie Skalare Multiplikation, | ||
| + | |||
| + | ====Rotationen==== | ||
| + | |||
| + | Um Drehungen mit Vektoren zu berechnen, werden Matrizenoperationen verwendet. Die grundlegende Methode besteht darin, den Vektor mit einer Rotationsmatrix zu multiplizieren. Die Rotationsmatrix hängt von der Art der Drehung ab, z. B. einer Drehung um die x-, y- oder z-Achse. | ||
| + | |||
| + | Vektorrepräsentation: | ||
| + | |||
| + | < | ||
| + | [x] | ||
| + | [y] | ||
| + | [z] | ||
| + | </ | ||
| + | |||
| + | Auswahl der Rotationsachse: | ||
| + | |||
| + | ===Rotationsmatrix=== | ||
| + | |||
| + | Abhängig von der ausgewählten Achse wird eine entsprechende Rotationsmatrix erstellt. Hier sind die Rotationsmatrizen für die drei Hauptachsen: | ||
| + | |||
| + | Drehung um die x-Achse (Roll): | ||
| + | |||
| + | < | ||
| + | [ 1 0 0 ] | ||
| + | [ 0 cosθ -sinθ ] | ||
| + | [ 0 sinθ cosθ ] | ||
| + | </ | ||
| + | |||
| + | Drehung um die y-Achse (Gier): | ||
| + | |||
| + | < | ||
| + | [ cosθ 0 sinθ ] | ||
| + | [ 0 1 0 ] | ||
| + | [-sinθ 0 cosθ ] | ||
| + | </ | ||
| + | |||
| + | Drehung um die z-Achse (Nick): | ||
| + | |||
| + | < | ||
| + | [ cosθ -sinθ 0 ] | ||
| + | [ sinθ cosθ 0 ] | ||
| + | [ 0 0 1 ] | ||
| + | </ | ||
| + | |||
| + | Hierbei ist θ (Theta) der Drehwinkel. | ||
| + | |||
| + | Multiplikation der Rotationsmatrix mit dem Vektor: Der ursprüngliche Vektor wird mit der entsprechenden Rotationsmatrix multipliziert, | ||
| + | |||
| + | < | ||
| + | [x_rot] | ||
| + | [y_rot] | ||
| + | [z_rot] = Rotationsmatrix * [x] | ||
| + | [y] | ||
| + | [z] | ||
| + | </ | ||
| + | |||
| + | Der resultierende Vektor [x_rot, y_rot, z_rot] ist der rotierte Vektor. Durch Anwendung verschiedener Drehwinkel und Kombinationen von Rotationsmatrizen können komplexe Drehungen und Transformationen von Vektoren erreicht werden. | ||
| + | |||
| + | Es ist zu beachten, dass diese Methode die Verwendung von homogenen Koordinaten und die Kombination von Rotations- und Translationsmatrizen für komplexere Transformationen nicht abdeckt. In solchen Fällen werden Matrizenoperationen wie Matrixmultiplikation und Transposition verwendet, um die gewünschten Transformationen zu berechnen. | ||
| + | |||
| + | =====Videos===== | ||
| + | |||
| + | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||
| + | |||
| + | =====allgemeines Dreieck===== | ||
| + | |||
| + | {{dreieck_allgemein.pdf}} | ||
| + | |||
| + | * https:// | ||
| + | =====Kosinussatz===== | ||
| + | |||
| + | {{kosinussatz.pdf|Kosinussatz}} | ||
| + | |||
| + | =====Links===== | ||
| + | |||
| + | * [[https:// | ||
| + | * [[https:// | ||
| + | * Rotation matrizes https:// | ||
| + | * Trigonometry in Games https:// | ||
| + | * 2D 3D Trig https:// | ||
| + | * Math is fun https:// | ||
| + | * [[https:// | ||