commit
						400be7f5d4
					
				|  | @ -1,5 +1,20 @@ | |||
| """ | ||||
| GTSAM Copyright 2010-2019, Georgia Tech Research Corporation, | ||||
| Atlanta, Georgia 30332-0415 | ||||
| All Rights Reserved | ||||
| 
 | ||||
| See LICENSE for the license information | ||||
| 
 | ||||
| Unit tests for IMU testing scenarios. | ||||
| Author: Frank Dellaert & Duy Nguyen Ta (Python) | ||||
| """ | ||||
| # pylint: disable=invalid-name, E1101 | ||||
| 
 | ||||
| from __future__ import print_function | ||||
| 
 | ||||
| import math | ||||
| import unittest | ||||
| 
 | ||||
| import numpy as np | ||||
| 
 | ||||
| import gtsam | ||||
|  | @ -29,7 +44,8 @@ class TestScenario(unittest.TestCase): | |||
|         T30 = scenario.pose(T) | ||||
|         np.testing.assert_almost_equal( | ||||
|             np.array([math.pi, 0, math.pi]), T30.rotation().xyz()) | ||||
|         self.assert_(gtsam.Point3(0, 0, 2 * R).equals(T30.translation(), 1e-9)) | ||||
|         self.assertTrue(gtsam.Point3( | ||||
|             0, 0, 2.0 * R).equals(T30.translation(), 1e-9)) | ||||
| 
 | ||||
| 
 | ||||
| if __name__ == '__main__': | ||||
|  |  | |||
|  | @ -1,8 +1,21 @@ | |||
| """ | ||||
| GTSAM Copyright 2010-2019, Georgia Tech Research Corporation, | ||||
| Atlanta, Georgia 30332-0415 | ||||
| All Rights Reserved | ||||
| 
 | ||||
| See LICENSE for the license information | ||||
| 
 | ||||
| Unit tests for IMU testing scenarios. | ||||
| Author: Frank Dellaert & Duy Nguyen Ta (Python) | ||||
| """ | ||||
| # pylint: disable=invalid-name, E1101, E0611 | ||||
| import unittest | ||||
| 
 | ||||
| import numpy as np | ||||
| 
 | ||||
| from gtsam import Point2, Point3, Unit3, Rot2, Pose2, Rot3, Pose3 | ||||
| from gtsam import Values, Cal3_S2, Cal3DS2, Cal3Bundler, EssentialMatrix, imuBias_ConstantBias | ||||
| from gtsam import (Cal3_S2, Cal3Bundler, Cal3DS2, EssentialMatrix, Point2, | ||||
|                    Point3, Pose2, Pose3, Rot2, Rot3, Unit3, Values, | ||||
|                    imuBias_ConstantBias) | ||||
| 
 | ||||
| 
 | ||||
| class TestValues(unittest.TestCase): | ||||
|  | @ -12,8 +25,8 @@ class TestValues(unittest.TestCase): | |||
|         E = EssentialMatrix(Rot3(), Unit3()) | ||||
|         tol = 1e-9 | ||||
| 
 | ||||
|         values.insert(0, Point2(0,0)) | ||||
|         values.insert(1, Point3(0,0,0)) | ||||
|         values.insert(0, Point2(0, 0)) | ||||
|         values.insert(1, Point3(0, 0, 0)) | ||||
|         values.insert(2, Rot2()) | ||||
|         values.insert(3, Pose2()) | ||||
|         values.insert(4, Rot3()) | ||||
|  | @ -34,18 +47,19 @@ class TestValues(unittest.TestCase): | |||
|         # The wrapper will automatically fix the type and storage order for you, | ||||
|         # but for performance reasons, it's recommended to specify the correct | ||||
|         # type and storage order. | ||||
|         vec = np.array([1., 2., 3.]) # for vectors, the order is not important, but dtype still is | ||||
|         # for vectors, the order is not important, but dtype still is | ||||
|         vec = np.array([1., 2., 3.]) | ||||
|         values.insert(11, vec) | ||||
|         mat = np.array([[1., 2.], [3., 4.]], order='F') | ||||
|         values.insert(12, mat) | ||||
|         # Test with dtype int and the default order='C' | ||||
|         # This still works as the wrapper converts to the correct type and order for you | ||||
|         # but is nornally not recommended! | ||||
|         mat2 = np.array([[1,2,],[3,5]]) | ||||
|         mat2 = np.array([[1, 2, ], [3, 5]]) | ||||
|         values.insert(13, mat2) | ||||
| 
 | ||||
|         self.assertTrue(values.atPoint2(0).equals(Point2(), tol)) | ||||
|         self.assertTrue(values.atPoint3(1).equals(Point3(), tol)) | ||||
|         self.assertTrue(values.atPoint2(0).equals(Point2(0,0), tol)) | ||||
|         self.assertTrue(values.atPoint3(1).equals(Point3(0,0,0), tol)) | ||||
|         self.assertTrue(values.atRot2(2).equals(Rot2(), tol)) | ||||
|         self.assertTrue(values.atPose2(3).equals(Pose2(), tol)) | ||||
|         self.assertTrue(values.atRot3(4).equals(Rot3(), tol)) | ||||
|  | @ -65,5 +79,6 @@ class TestValues(unittest.TestCase): | |||
|         actualMatrix2 = values.atMatrix(13) | ||||
|         self.assertTrue(np.allclose(mat2, actualMatrix2, tol)) | ||||
| 
 | ||||
| 
 | ||||
| if __name__ == "__main__": | ||||
|     unittest.main() | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue