19 using namespace gtsam;
51 TEST( testPoseRotationFactor, level3_zero_error ) {
53 Pose3RotationPrior factor(poseKey, rot3A, model3);
61 TEST( testPoseRotationFactor, level3_error ) {
63 Pose3RotationPrior factor(poseKey,
rot3C, model3);
65 #if defined(GTSAM_ROT3_EXPMAP) || defined(GTSAM_USE_QUATERNIONS) 77 TEST( testPoseRotationFactor, level2_zero_error ) {
79 Pose2RotationPrior factor(poseKey, rot2A,
model1);
87 TEST( testPoseRotationFactor, level2_error ) {
89 Pose2RotationPrior factor(poseKey, rot2B,
model1);
97 TEST( testPoseRotationFactor, level2_error_wrap ) {
static const Eigen::MatrixBase< Vector3 >::ConstantReturnType Z_3x1
const Point3 point3B(4.0, 6.0, 8.0)
static int runAllTests(TestResult &result)
static Rot3 Pitch(double t)
Positive pitch is up (increasing aircraft altitude).See ypr.
Implements a prior on the rotation component of a pose.
bool assert_equal(const Matrix &expected, const Matrix &actual, double tol)
const Point2 point2B(4.0, 6.0)
Some functions to compute numerical derivatives.
Vector evalFactorError3(const Pose3RotationPrior &factor, const Pose3 &x)
Rot3 is a 3D rotation represented as a rotation matrix if the preprocessor symbol GTSAM_USE_QUATERNIO...
static Rot3 Expmap(const Vector3 &v, OptionalJacobian< 3, 3 > H={})
#define EXPECT(condition)
PoseRotationPrior< Pose2 > Pose2RotationPrior
Array< double, 1, 3 > e(1./3., 0.5, 2.)
const SharedNoiseModel model3
Vector evaluateError(const Pose &pose, OptionalMatrixType H) const override
static const Pose3 pose1(Rot3(), Point3(0, 1, 0.5))
PoseRotationPrior< Pose3 > Pose3RotationPrior
Vector evalFactorError2(const Pose2RotationPrior &factor, const Pose2 &x)
static shared_ptr Sigmas(const Vector &sigmas, bool smart=true)
static Rot2 fromAngle(double theta)
Named constructor from angle in radians.
TEST(SmartFactorBase, Pinhole)
const SharedNoiseModel model1
set noclip points set clip one set noclip two set bar set border lt lw set xdata set ydata set zdata set x2data set y2data set boxwidth set dummy x
std::uint64_t Key
Integer nonlinear key type.
const Point3 point3A(1.0, 2.0, 3.0)
const Point2 point2A(1.0, 2.0)
noiseModel::Base::shared_ptr SharedNoiseModel