From 552d6cab9651be0c3608e4b28dd58b28218838f0 Mon Sep 17 00:00:00 2001 From: Pascal Serrarens Date: Sun, 6 Apr 2025 12:10:39 +0200 Subject: [PATCH] Fixes to support LinearAlgebra repo --- Messages/LowLevelMessages.py | 4 ++-- Things/DifferentialDrive.py | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/Messages/LowLevelMessages.py b/Messages/LowLevelMessages.py index 6183e44..c5a178d 100644 --- a/Messages/LowLevelMessages.py +++ b/Messages/LowLevelMessages.py @@ -4,10 +4,10 @@ from LinearAlgebra.Angle import Angle def SendAngle8(buffer, ix_ref, angle): """! Send an 8-bit angle value """ - angle = Angle.Normalize(angle) + # angle = Angle.Normalize(angle) ix = ix_ref[0] - buffer[ix] = int((angle / 360) * 256).to_bytes(1, 'big', signed=True)[0] + buffer[ix] = int((angle.InDegrees() / 360) * 256).to_bytes(1, 'big', signed=True)[0] ix_ref[0] += 1 def SendFloat16(buffer, ix_ref, value): diff --git a/Things/DifferentialDrive.py b/Things/DifferentialDrive.py index 6ed5ff1..097cf47 100644 --- a/Things/DifferentialDrive.py +++ b/Things/DifferentialDrive.py @@ -65,13 +65,14 @@ class DifferentialDrive(Thing): # This assumes no sideward velocity because diff drive does not support it linear_speed = self.linear_velocity.distance # When the direction is backwards... - if self.linear_velocity.direction.horizontal < -90 or self.linear_velocity.direction.horizontal > 90: + horizontalAngle = self.linear_velocity.direction.horizontal.InDegrees() + if horizontalAngle < -90 or horizontalAngle > 90: linear_speed = -linear_speed angular_velocity: Spherical = self.angular_velocity angular_speed: float = angular_velocity.distance * Angle.Deg2Rad # in radians/sec # Determine the rotation direction - if angular_velocity.direction.horizontal < 0: + if angular_velocity.direction.horizontal.InDegrees() < 0: angular_speed = -angular_speed if self.wheel_left is not None and self.wheel_right is not None: