3D: Lineare Geschwindigkeit aus Position und Winkelgeschwindigkeit erhalten

Ich möchte die lineare Geschwindigkeit eines Punktes im 3D-Raum (euklidisch) herausfinden, gegeben:

  • Seine Stellung
  • Seine Winkelgeschwindigkeit
  • Der Punkt, um den es sich dreht (Drehpunkt)

(Dies ist ein Problem, das ich für die 3D-Grafikprogrammierung mit einer Physik-Engine lösen muss).

Die Position des Punktes und die Position des Drehpunktes sind 3-wertige Vektoren, X , j Und z .

Die Winkelgeschwindigkeit ist ebenfalls ein 3-wertiger Vektor, der Euler-Winkel darstellt.

Welche Operation(en) müsste ich durchführen, um die lineare Geschwindigkeit des Punktes zu berechnen?

Die 3D/Physik-Engine verfügt über verschiedene mathematische Operationen auf hohem Niveau, einschließlich Matrix-, Vektor- und Quaternion-Operationen. Hoffentlich ist das, was ich brauche, unter diesen.

Antworten (2)

Lassen R 0 ( T ) bezeichnen den Punkt, um den sich das Objekt dreht und R ( T ) die Position des Objekts. Dann die Tatsache, dass sich das Teilchen um den Punkt dreht R 0 ( T ) kann durch die mathematische Aussage dass formalisiert werden

R ( T ) R 0 ( T ) = R ( T ) C
für einen konstanten Vektor C und zeitabhängige Drehung R ( T ) . Es folgt dem
R ˙ ( T ) R ˙ 0 ( T ) = R ˙ ( T ) C = R ˙ ( T ) R ( T ) 1 ( R ( T ) R 0 ( T ) ) = ω ( T ) × ( R ( T ) R 0 ( T ) )
(Die letzte Gleichheit ist ein Standardergebnis über Drehungen), also haben wir das Endergebnis
R ˙ ( T ) = R ˙ 0 ( T ) + ω ( T ) × ( R ( T ) R 0 ( T ) )
das ist, was Sie gesucht haben, glaube ich.

Beifall!

Die Beziehung zwischen Winkelgeschwindigkeit ω , Stellung R (unter der Annahme einer Rotation um den Ursprung) und Tangentialgeschwindigkeit v (wonach Sie fragen) ist gegeben durch

ω = R × v R 2 ,

Wo × ist das Kreuzprodukt und R 2 die Norm des Ortsvektors im Quadrat. Sie können diese Gleichung komponentenweise aufschreiben, um drei Gleichungen für drei unbekannte Variablen zu erhalten (die Komponenten von v ) und löse sie algebraisch.