31 #ifdef G2O_HAVE_OPENGL 49 for (
int i=0; i<7; i++) {
53 Vector4D::MapType(off.data()+3).
normalize();
60 for (
int i=0; i<7; i++)
88 #ifdef G2O_HAVE_OPENGL 91 refreshPropertyPtrs(0);
99 _cubeSide = _previousParams->makeProperty<
FloatProperty>(_typeName +
"::CUBE_SIDE", .05f);
108 if (
typeid(*element).name()!=_typeName)
111 refreshPropertyPtrs(params_);
112 if (! _previousParams)
115 if (_show && !_show->value())
117 float cs = _cubeSide ? _cubeSide->value() : 1.0f;
118 glPushAttrib(GL_COLOR);
ParameterVector _parameters
caching the offset related to a vertex
Isometry3D fromVectorQT(const Vector7d &v)
virtual void updateImpl()
redefine this to do the update
Abstract action that operates on a graph entity.
const ParameterSE3Offset * offsetParam() const
virtual bool resolveDependancies()
OptimizableGraph::Vertex * vertex()
const Isometry3D & offset() const
rotation of the offset as 3x3 rotation matrix
Eigen::Matrix< double, 7, 1 > Vector7d
void setOffsetParam(ParameterSE3Offset *offsetParam)
void setOffset(const Isometry3D &offset_=Isometry3D::Identity())
void drawBox(GLfloat l, GLfloat w, GLfloat h)
virtual bool read(std::istream &is)
read the data from a stream
Eigen::Transform< double, 3, Eigen::Isometry, Eigen::ColMajor > Isometry3D
Eigen::Quaterniond & normalize(Eigen::Quaterniond &q)
Isometry3D _inverseOffset
#define POSE_PARAMETER_COLOR
const EstimateType & estimate() const
return the current estimate of the vertex
ParameterSE3Offset * _offsetParam
the parameter connected to the cache
virtual bool refreshPropertyPtrs(HyperGraphElementAction::Parameters *params_)
3D pose Vertex, represented as an Isometry3D
Vector7d toVectorQT(const Isometry3D &t)
virtual bool write(std::ostream &os) const
write the data to a stream