AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Rotation anhand eines Vektors

Ein Thema von Weazy · begonnen am 29. Okt 2009 · letzter Beitrag vom 30. Okt 2009
 
Benutzerbild von alleinherrscher
alleinherrscher

Registriert seit: 8. Jul 2004
Ort: Aachen
797 Beiträge
 
Delphi XE2 Professional
 
#8

Re: Rotation anhand eines Vektors

  Alt 30. Okt 2009, 13:14
Zitat von Medium:
Stimmt, man kann den Orthogonalen zwischen "altem" und neuen Up-Vektor als weiteren nehmen, allerdings ist dann eine Annahme über die Drehung vorgenommen worden, da sie an und für sich nicht vollständig bestimmt ist. Du willst ja nicht nur den Vektor drehen, sondern ein gesamtes Bezugssystem, und das braucht mehr als nur eine Richtung in 3D. Bildlich gesprochen würdest du z.B. einen Würfel kippen, könntest diesen ja aber noch frei um den neuen Up-Vektor drehen ohne die Drehung des Up-Vektors selbst zu verletzen. Die oben getroffene Annahme dürfte zu einem intuitiv "gutem" Verhalten führen, ist aber möglicherweise garnicht was du erreichen möchtest. Das hängt dann davon ab was du letztlich genau machen willst.

Stimmt, da hast du recht, du könntest dich noch um deinen Up-Vektor drehen, d.h. einen Freiheitsgrad hast du noch. Aber meine Drehung würde die Rotation um den Up-Vektor invariant lassen - soll heißen: Wenn unbedingt nötig, könnte man anschließend noch eine Drehmatrix mit dem Up-Vektor als Drehachse erstellen und so dann auch das objekt "um sich selbst" drehen.

//edit:

Zitat von Khabarakh:
@alleinherrscher: Wenn du um diesen Winkel drehst, veränderst du leider auch den Up-Vektor - das Objekt "kippt" (Roll) relativ zur Horizontalen, was sehr wahrscheinlich unerwünscht sein dürfte.
Wenn du mit der Horizontalen die x-y Ebene meinst kippt das Objekt natürlich gegenüber der Horizontalen, aber genau dass will man doch, wenn ich diesen Satz hier richtig interpretiere - er will doch, dass nach der Drehung der Up Vektor des Objektes in die selbe Richtung zeigt, wie ein zweiter, beliebig vorgegebener Vektor:

Zitat:
Dieses Objekt hat einen richtungsvektor der angibt wo oben ist, also 0,1,0. Nun habe ich einen beliebigen vektor und möchte das Objekt so rotieren, dass es in die Richtung dieses Vektors zeigt.
„Software wird schneller langsamer als Hardware schneller wird. “ (Niklaus Wirth, 1995)

Mein Netzwerktool: Lan.FS
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz