33 using namespace Eigen;
70 assert(to && to->
vertex());
72 VertexType::EstimateType pose=v->estimate();
73 VertexType::EstimateType delta =
_robotPoseObject->vertex()->estimate().inverse()*pose;
74 Vector3d translation=delta.translation();
75 double range2=translation.squaredNorm();
80 translation.normalize();
81 double bearing=acos(translation.x());
82 if (fabs(bearing)>
_fov)
84 AngleAxisd a(delta.rotation());
94 std::list<PoseObject*>::reverse_iterator it=r->
trajectory().rbegin();
104 for (std::set<BaseWorldObject*>::iterator it=
world()->objects().begin();
WorldObjectType::VertexType VertexType
bool addParameter(Parameter *p)
InformationType _information
bool isVisible(WorldObjectType *to)
std::set< PoseObject * > _posesToIgnore
GaussianSampler< typename EdgeType::ErrorVector, InformationType > _sampler
BaseEdge< D, Isometry3D >::ErrorVector ErrorVector
SampleType generateSample()
double _maxAngularDifference
BaseEdge< D, Isometry3D >::Measurement Measurement
virtual bool setMeasurementFromState()
ParameterSE3Offset * _offsetParam1
bool setParameterId(int argNum, int paramId)
virtual void setMeasurement(const Isometry3D &m)
const InformationType & information()
EIGEN_STRONG_INLINE void setInformation(const InformationType &information)
TrajectoryType & trajectory()
PoseObject * _robotPoseObject
ParameterSE3Offset * _offsetParam2
EIGEN_MAKE_ALIGNED_OPERATOR_NEW SensorPose3DOffset(const std::string &name_)
OptimizableGraph * graph()
void addNoise(EdgeType *e)
std::set< BaseWorldObject * > & objects()
virtual bool addEdge(HyperGraph::Edge *e)
Isometry3D fromVectorMQT(const Vector6d &v)
void setInformation(const InformationType &information_)
EdgeType * mkEdge(WorldObjectType *object)
EIGEN_STRONG_INLINE const Measurement & measurement() const
accessor functions for the measurement represented by the edge
virtual void addParameters()