30 #ifdef G2O_HAVE_OPENGL 45 is >> p[0] >> p[1] >> p[2];
53 os << p[0] <<
" " << p[1] <<
" " << p[2];
63 if (!params || !params->
os){
64 std::cerr <<
__PRETTY_FUNCTION__ <<
": warning, no valid output stream specified" << std::endl;
74 #ifdef G2O_HAVE_OPENGL 84 _triangleY = _previousParams->makeProperty<
FloatProperty>(_typeName +
"::TRIANGLE_Y", .05f);
97 initializeDrawActionsCache();
98 refreshPropertyPtrs(params_);
100 if (! _previousParams)
103 if (_show && !_show->value())
112 opengl::drawArrow2D((
float)_triangleX->value(), (float)_triangleY->value(), (float)_triangleX->value()*.3f);
114 drawUserData(that->
userData(), params_);
virtual bool read(std::istream &is)
read the vertex from a stream, i.e., the internal state of the vertex
#define __PRETTY_FUNCTION__
const Data * userData() const
the user data associated with this vertex
Vector3D toVector() const
convert to a 3D vector (x, y, theta)
Eigen::Matrix< double, 3, 1, Eigen::ColMajor > Vector3D
Abstract action that operates on a graph entity.
CacheContainer * cacheContainer()
virtual HyperGraphElementAction * operator()(HyperGraph::HyperGraphElement *element, HyperGraphElementAction::Parameters *params_)
redefine this to do the action stuff. If successful, the action returns a pointer to itself ...
EIGEN_MAKE_ALIGNED_OPERATOR_NEW VertexSE2()
2D pose Vertex, (x,y,theta)
const std::string & name() const
returns the name of an action, e.g "draw"
void drawArrow2D(float len, float head_width, float head_len)
#define POSE_VERTEX_COLOR
const Eigen::Rotation2Dd & rotation() const
rotational component
void setEstimate(const EstimateType &et)
set the estimate for the vertex also calls updateCache()
virtual bool write(std::ostream &os) const
write the vertex to a stream
const EstimateType & estimate() const
return the current estimate of the vertex
virtual bool refreshPropertyPtrs(HyperGraphElementAction::Parameters *params_)
const Vector2D & translation() const
translational component
VertexSE2WriteGnuplotAction()