42 e->setMeasurement(e->measurement() + n(0));
50 assert(to && to->vertex());
52 VertexType::EstimateType pose = v->estimate();
53 VertexType::EstimateType delta =
55 Vector2d translation = delta;
56 double range2 = translation.squaredNorm();
59 translation.normalize();
60 double bearing = acos(translation.x());
61 if (fabs(bearing) >
_fov)
return false;
68 std::list<PoseObject*>::reverse_iterator it = r->trajectory().rbegin();
70 while (it != r->trajectory().rend() && count < 1) {
75 for (std::set<BaseWorldObject*>::iterator it =
world()->
objects().begin();
81 e->setMeasurementFromState();
internal::BaseEdgeTraits< D >::ErrorVector ErrorVector
OptimizableGraph * graph() const
InformationType _information
WorldObjectType::VertexType VertexType
WorldObjectPointXY WorldObjectType
EdgeType * mkEdge(WorldObjectType *object)
PoseObject * _robotPoseObject
const InformationType & information()
GaussianSampler< typename EdgeType::ErrorVector, InformationType > _sampler
EdgeSE2PointXYBearing EdgeType
SampleType generateSample()
return a sample of the Gaussian distribution
virtual void addNoise(EdgeType *e)
EIGEN_MAKE_ALIGNED_OPERATOR_NEW SensorPointXYBearing(const std::string &name_)
bool isVisible(WorldObjectType *to)
std::set< BaseWorldObject * > & objects()
WorldObject< VertexPointXY > WorldObjectPointXY
Robot< WorldObjectSE2 > Robot2D
virtual bool addEdge(HyperGraph::Edge *e)