RoboidControl-python/SwingTwist.py
Pascal Serrarens e218e0ea51 Event handling
2025-01-20 19:26:30 +01:00

18 lines
580 B
Python

from .Direction import Direction
from .Quaternion import Quaternion
class SwingTwist:
def __init__(self, swing: Direction, twist: float):
if swing.vertical > 90 or swing.vertical < -90:
swing.horizontal += 180
swing.vertical = 180 - swing.vertical
twist += 180
self.swing = swing
self.twist = twist
def ToQuaternion(self) -> Quaternion:
q = Quaternion.Euler(-self.swing.vertical,
self.swing.horizontal,
self.twist)
return q