Einzelnen Beitrag anzeigen

Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#2

Re: Drehung eines Körpers um eine beliebige Achse

  Alt 4. Mai 2009, 23:19
Icvh nehme jetzt mal an, du möchtest das Teil um mehrere Achsten (=3) drehen können und nicht nur um eine.

Dann befindest du dich im 3D-Raum.

Dann machst du folgendes:

1. Das Quadrat vektorbasiert speichern. Also einen Mittelpunkt und von diesem aus Vektoren zu den Eckpunkten. Diese Vektoren sind dreidimensional.

2. Eine Vektor-Matrix-Multiplikations-Funktion schreiben. Eine Matrix hat hier 3x3 also 9 Elemente.

3. 3 Funktionen (eine für jede Achse) schreiben, die dir (unter Angabe eines Drehwinkels) die Matrix zurückgeben.

4. Das ganze verpacken

Beachte, dass die Reihenfolge der Drehmatrizen nicht egal ist. Es macht einen Unterschied, ob du erst um X, dann um y und zum Schluss um z drehst, oder andersherum

Vektorn und Matrizen kannst du in Delphi als recors implementieren
  Mit Zitat antworten Zitat