10 #include <gtsam/geometry/OrientedPlane3.h> 23 Vector measured_coeffs_;
37 const Key& pose,
const Key& landmark) :
38 Base(
noiseModel, pose, landmark), poseKey_(pose), landmarkKey_(landmark), measured_coeffs_(
44 virtual void print(
const std::string& s =
"OrientedPlane3Factor",
45 const KeyFormatter& keyFormatter = DefaultKeyFormatter)
const;
49 boost::optional<Matrix&> H1 = boost::none, boost::optional<Matrix&> H2 =
54 err << predicted_plane.
error(measured_p_);
81 virtual void print(
const std::string& s =
"OrientedPlane3DirectionPrior",
82 const KeyFormatter& keyFormatter = DefaultKeyFormatter)
const;
88 boost::optional<Matrix&> H = boost::none)
const;
This is the base class for all factor types.
Definition: Factor.h:54
A convenient base class for creating your own NoiseModelFactor with 2 variables.
Definition: NonlinearFactor.h:345
OrientedPlane3DirectionPrior()
Constructor.
Definition: OrientedPlane3Factor.h:70
virtual void print(const std::string &s="OrientedPlane3DirectionPrior", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
print
Definition: OrientedPlane3Factor.cpp:23
Represents an infinite plane in 3D, which is composed of a planar normal and its perpendicular distan...
Definition: OrientedPlane3.h:35
std::uint64_t Key
Integer nonlinear key type.
Definition: types.h:57
virtual Vector evaluateError(const Pose3 &pose, const OrientedPlane3 &plane, boost::optional< Matrix & > H1=boost::none, boost::optional< Matrix & > H2=boost::none) const
evaluateError
Definition: OrientedPlane3Factor.h:48
virtual void print(const std::string &s="OrientedPlane3Factor", const KeyFormatter &keyFormatter=DefaultKeyFormatter) const
print
Definition: OrientedPlane3Factor.cpp:15
Definition: OrientedPlane3Factor.h:61
static OrientedPlane3 Transform(const OrientedPlane3 &plane, const Pose3 &xr, OptionalJacobian< 3, 6 > Hr=boost::none, OptionalJacobian< 3, 3 > Hp=boost::none)
Definition: OrientedPlane3.h:105
OrientedPlane3DirectionPrior(Key key, const Vector &z, const SharedGaussian &noiseModel)
Constructor with measured plane coefficients (a,b,c,d), noise model, landmark symbol.
Definition: OrientedPlane3Factor.h:74
boost::function< std::string(Key)> KeyFormatter
Typedef for a function to format a key, i.e. to convert it to a string.
Definition: Key.h:33
A convenient base class for creating your own NoiseModelFactor with 1 variable.
Definition: NonlinearFactor.h:276
Nonlinear factor base class.
Definition: NonlinearFactor.h:50
const SharedNoiseModel & noiseModel() const
access to the noise model
Definition: NonlinearFactor.h:210
Represents a 3D point on a unit sphere.
Definition: Unit3.h:42
Non-linear factor base classes.
OrientedPlane3Factor(const Vector &z, const SharedGaussian &noiseModel, const Key &pose, const Key &landmark)
Constructor with measured plane coefficients (a,b,c,d), noise model, pose symbol.
Definition: OrientedPlane3Factor.h:36
Vector3 error(const OrientedPlane3 &plane) const
Computes the error between two planes.
Definition: OrientedPlane3.cpp:61
Global functions in a separate testing namespace.
Definition: chartTesting.h:28
virtual bool equals(const NonlinearFactor &expected, double tol=1e-9) const
equals
Definition: OrientedPlane3Factor.cpp:31
OrientedPlane3Factor()
Constructor.
Definition: OrientedPlane3Factor.h:31
Factor to measure a planar landmark from a given pose.
Definition: OrientedPlane3Factor.h:18
Key landmarkKey_
measured plane parameters
Definition: OrientedPlane3Factor.h:64
virtual Vector evaluateError(const OrientedPlane3 &plane, boost::optional< Matrix & > H=boost::none) const
Override this method to finish implementing a unary factor.
Definition: OrientedPlane3Factor.cpp:40