General > German corner
Wie kann ich ein Objekt auf einen bestimmten Punkt richten?
(1/1)
ralph:
Moin.
Ich möchte ein 3D-Object auf einen bestimmten Punkten richten. Es soll aber nicht die Blickrichtung des Punktes annehmen.
Wie kann ich das schaffen?
Gruß,
Ralph
EgonOlsen:
Du muesstest den (Simple-)Vector zwischen vom Mittelpunkt des Objektes (o) und dem Punkt im Raum (p) ausrechnen (also -o+p). Dann kannst du von diesem die Rotationsmatrize generieren lassen (getRotationMatrix() in SimpleVector) und diese Matrix als neue Rotationsmatrix des Objektes setzen. Das sollte es tun.
ralph:
Könntest du mir vieleicht ein kleines Beispiel geben?
EgonOlsen:
Naja, etwa so:
--- Code: ---SimpleVector p=...;// Der Punkt, auf den das Objekt gerichtet werden soll
SimpleVector la=p.calcSub(obj.getTransformedCenter());
Matrix m=la.getRotationMatrix();
obj.setRotationMatrix(m);
--- End code ---
Habe ich jetzt aber nicht getestet...
ralph:
Danke, es hat geklappt.
Ralph.
Navigation
[0] Message Index
Go to full version