Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Florian Super JLI'ler
Alter: 36 Anmeldedatum: 20.06.2003 Beiträge: 302
Medaillen: Keine
|
Verfasst am: 29.12.2005, 17:07 Titel: Vektor rotieren |
|
|
Hallo
Wie kann ich einen Vektor rotieren. Also dazu mal ein Beispiel.
Also ich habe eine linie die 2 Endpunkte sind gegeben:
CPP: | D3DXVECTOR2 vPointA(40,10);
D3DXVECTOR2 vPointB(40,40);
|
Denn Mittelpunkt (RotationCenter) berechne ich so:
CPP: | D3DXVECTOR2 vRotationCenter = (vPointA + vPointB) /2;
|
Aber wie kann ich jez diese 2 Punkte (Linie) um den Winkel fRotation rotieren lassen.
CPP: | vPointA.x = ?;
vPointA.y = ?;
vPointB.x = ?;
vPointB.y = ?;
|
Kennt jemand ein Tutorial Rechenbeispiel oder sonstiges dazu. Hab bisher nichts gefunden. _________________ Theorie ist, wenn man alles weiss und nichts funktioniert.
Praxis ist, wenn alles funktioniert und keiner weiss warum. |
|
Nach oben |
|
|
OLiver Super JLI'ler
Alter: 33 Anmeldedatum: 29.06.2003 Beiträge: 306 Wohnort: Jena Medaillen: Keine
|
Verfasst am: 29.12.2005, 17:20 Titel: |
|
|
Drehung von x,y um den Winkel a um den Koordinatenursprung entgegen dem Uhrzeigersinn:
x' = cos(a) * x - sin(a) * y
y' = sin(a) * x+ cos(a) *y _________________ http://www.sieder25.org/ (Siedler 2 - Remake) |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 29.12.2005, 19:02 Titel: |
|
|
Mit Matrizen. Wenn man einen Vecotr mit einer Rotatiosmatriz multiplizeirt, wird er um den Ursprung gedreht. Will man einen anderen Drehpunk, muss man erst den Vector so verschieben, das der gewünschte Drehpunkt jetzt der Ursprung ist, dann rotieren und dann wieder zurückverschieben. Müsste es auch D3DX Funktionen für gebne, oder man bastelt sich was eigenes. _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
OLiver Super JLI'ler
Alter: 33 Anmeldedatum: 29.06.2003 Beiträge: 306 Wohnort: Jena Medaillen: Keine
|
Verfasst am: 29.12.2005, 19:06 Titel: |
|
|
Rotationsmatrix sieht übrigens so aus
Code: |
cos(a) sin(a) 0
-sin(a) cos(a) 0
0 0 1
|
_________________ http://www.sieder25.org/ (Siedler 2 - Remake) |
|
Nach oben |
|
|
Florian Super JLI'ler
Alter: 36 Anmeldedatum: 20.06.2003 Beiträge: 302
Medaillen: Keine
|
|
Nach oben |
|
|
|