Fix invalid rotation matrix in test_rotate()

The python unittest `test_Rot3` fails in case gtsam is compiled with cmake option `-D GTSAM_USE_QUATERNION=ON`.
The cause of the test failure is an invalid rotationmatrix with negative determinant in `test_rotate()`.
release/4.3a0
roderick-koehle 2023-03-24 14:46:00 +01:00 committed by GitHub
parent 005c7d4e2d
commit db6792c894
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 3 deletions

View File

@ -2034,13 +2034,13 @@ class TestRot3(GtsamTestCase):
def test_rotate(self) -> None: def test_rotate(self) -> None:
"""Test that rotate() works for both Point3 and Unit3.""" """Test that rotate() works for both Point3 and Unit3."""
R = Rot3(np.array([[1, 0, 0], [0, -1, 0], [0, 0, 1]])) R = Rot3(np.array([[1, 0, 0], [0, -1, 0], [0, 0, -1]]))
p = Point3(1., 1., 1.) p = Point3(1., 1., 1.)
u = Unit3(np.array([1, 1, 1])) u = Unit3(np.array([1, 1, 1]))
actual_p = R.rotate(p) actual_p = R.rotate(p)
actual_u = R.rotate(u) actual_u = R.rotate(u)
expected_p = Point3(np.array([1, -1, 1])) expected_p = Point3(np.array([1, -1, -1]))
expected_u = Unit3(np.array([1, -1, 1])) expected_u = Unit3(np.array([1, -1, -1]))
np.testing.assert_array_equal(actual_p, expected_p) np.testing.assert_array_equal(actual_p, expected_p)
np.testing.assert_array_equal(actual_u.point3(), expected_u.point3()) np.testing.assert_array_equal(actual_u.point3(), expected_u.point3())