22 #include <gtsam/geometry/Unit3.h> 52 nZ_(nZ), bRef_(bRef) {
71 typedef boost::shared_ptr<Rot3AttitudeFactor>
shared_ptr;
96 virtual gtsam::NonlinearFactor::shared_ptr
clone()
const {
98 gtsam::NonlinearFactor::shared_ptr(
new This(*
this)));
103 DefaultKeyFormatter)
const;
110 boost::optional<Matrix&> H = boost::none)
const {
123 friend class boost::serialization::access;
124 template<
class ARCHIVE>
125 void serialize(ARCHIVE & ar,
const unsigned int ) {
127 & boost::serialization::make_nvp(
"NoiseModelFactor1",
128 boost::serialization::base_object<Base>(*
this));
129 ar & BOOST_SERIALIZATION_NVP(nZ_);
130 ar & BOOST_SERIALIZATION_NVP(bRef_);
174 virtual gtsam::NonlinearFactor::shared_ptr
clone()
const {
176 gtsam::NonlinearFactor::shared_ptr(
new This(*
this)));
181 DefaultKeyFormatter)
const;
184 virtual bool equals(
const NonlinearFactor& expected,
double tol = 1e-9)
const;
188 boost::optional<Matrix&> H = boost::none)
const {
192 *H = Matrix::Zero(2,6);
193 H->block<2,3>(0,0) = H23;
207 friend class boost::serialization::access;
208 template<
class ARCHIVE>
209 void serialize(ARCHIVE & ar,
const unsigned int ) {
211 & boost::serialization::make_nvp(
"NoiseModelFactor1",
212 boost::serialization::base_object<Base>(*
this));
213 ar & BOOST_SERIALIZATION_NVP(nZ_);
214 ar & BOOST_SERIALIZATION_NVP(bRef_);
boost::shared_ptr< Pose3AttitudeFactor > shared_ptr
shorthand for a smart pointer to a factor
Definition: AttitudeFactor.h:149
AttitudeFactor(const Unit3 &nZ, const Unit3 &bRef=Unit3(0, 0, 1))
Constructor.
Definition: AttitudeFactor.h:51
const Rot3 & rotation(OptionalJacobian< 3, 6 > H=boost::none) const
get rotation
Definition: Pose3.cpp:272
virtual gtsam::NonlinearFactor::shared_ptr clone() const
Definition: AttitudeFactor.h:96
Nonlinear factor base class.
Definition: NonlinearFactor.h:52
Represents a 3D point on a unit sphere.
Definition: Unit3.h:42
Rot3AttitudeFactor()
default constructor - only use for serialization
Definition: AttitudeFactor.h:77
virtual Vector evaluateError(const Rot3 &nRb, boost::optional< Matrix & > H=boost::none) const
vector of errors
Definition: AttitudeFactor.h:109
void print(const Matrix &A, const string &s, ostream &stream)
print without optional string, must specify cout yourself
Definition: Matrix.cpp:140
virtual gtsam::NonlinearFactor::shared_ptr clone() const
Definition: AttitudeFactor.h:174
OptionalJacobian is an Eigen::Ref like class that can take be constructed using either a fixed size o...
Definition: OptionalJacobian.h:39
noiseModel::Base::shared_ptr SharedNoiseModel
Note, deliberately not in noiseModel namespace.
Definition: NoiseModel.h:1072
virtual Vector evaluateError(const Pose3 &nTb, boost::optional< Matrix & > H=boost::none) const
vector of errors
Definition: AttitudeFactor.h:187
A helper that implements the traits interface for GTSAM types.
Definition: Testable.h:150
boost::shared_ptr< Rot3AttitudeFactor > shared_ptr
shorthand for a smart pointer to a factor
Definition: AttitudeFactor.h:71
Definition: AttitudeFactor.h:64
Template to create a binary predicate.
Definition: Testable.h:110
Rot3AttitudeFactor(Key key, const Unit3 &nZ, const SharedNoiseModel &model, const Unit3 &bRef=Unit3(0, 0, 1))
Constructor.
Definition: AttitudeFactor.h:90
AttitudeFactor()
default constructor - only use for serialization
Definition: AttitudeFactor.h:43
Rot3AttitudeFactor This
Typedef to this class.
Definition: AttitudeFactor.h:74
A manifold defines a space in which there is a notion of a linear tangent space that can be centered ...
Definition: concepts.h:30
Pose3AttitudeFactor This
Typedef to this class.
Definition: AttitudeFactor.h:152
Definition: AttitudeFactor.h:34
const Unit3 bRef_
Position measurement in.
Definition: AttitudeFactor.h:38
A convenient base class for creating your own NoiseModelFactor with 1 variable.
Definition: NonlinearFactor.h:276
Vector attitudeError(const Rot3 &p, OptionalJacobian< 2, 3 > H=boost::none) const
vector of errors
Definition: AttitudeFactor.cpp:26
Non-linear factor base classes.
Pose3AttitudeFactor(Key key, const Unit3 &nZ, const SharedNoiseModel &model, const Unit3 &bRef=Unit3(0, 0, 1))
Constructor.
Definition: AttitudeFactor.h:168
Definition: AttitudeFactor.h:141
std::uint64_t Key
Integer nonlinear key type.
Definition: types.h:57
Pose3AttitudeFactor()
default constructor - only use for serialization
Definition: AttitudeFactor.h:155
Global functions in a separate testing namespace.
Definition: chartTesting.h:28
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