def test_determine_rotation_for_angle(self): gtap = GoToAbsolutePosition([0, 0, 0]) rotation = gtap.determine_rotation_from_to_angle(0, 0) self.assertEquals(0, rotation) rotation = gtap.determine_rotation_from_to_angle(0, 1) self.assertEquals(1, rotation) rotation = gtap.determine_rotation_from_to_angle(0, 10) self.assertEquals(10, rotation) rotation = gtap.determine_rotation_from_to_angle(0, 359) self.assertEquals(-1, rotation) rotation = gtap.determine_rotation_from_to_angle(0, 350) self.assertEquals(-10, rotation) rotation = gtap.determine_rotation_from_to_angle(0, 180) self.assertEquals(180, rotation) rotation = gtap.determine_rotation_from_to_angle(75, 75) self.assertEquals(0, rotation) rotation = gtap.determine_rotation_from_to_angle(75, 255) self.assertEquals(180, rotation)
def test_determine_angle_to_turn(self): gtap = GoToAbsolutePosition([-4500, 0, 0]) current_x = 0 current_y = 0 vector_to_target, radius, angle = gtap.determine_vector_and_angle_towards_target(current_x, current_y) self.assertEquals(180, angle) self.assertEquals(4500, radius) self.assertEquals([-4500, 0], vector_to_target) current_x = -3000 current_y = 1500 vector_to_target, radius, angle = gtap.determine_vector_and_angle_towards_target(current_x, current_y) self.assertEquals(225, angle) self.assertEquals((1500**2+1500**2)**0.5, radius) self.assertEquals([-1500, -1500], vector_to_target) gtap = GoToAbsolutePosition([0, 0, 0]) current_x = -4500 current_y = 0 vector_to_target, radius, angle = gtap.determine_vector_and_angle_towards_target(current_x, current_y) self.assertEquals(0, angle) self.assertEquals(4500, radius) self.assertEquals([4500, 0], vector_to_target) gtap = GoToAbsolutePosition([0, 1500, 0]) current_x = -4500 current_y = 0 vector_to_target, radius, angle = gtap.determine_vector_and_angle_towards_target(current_x, current_y) self.assertEquals(18, angle) self.assertEquals((4500**2+1500**2)**0.5, radius) self.assertEquals([4500, 1500], vector_to_target)