本文整理汇总了C++中eigen::Isometry3d::data方法的典型用法代码示例。如果您正苦于以下问题:C++ Isometry3d::data方法的具体用法?C++ Isometry3d::data怎么用?C++ Isometry3d::data使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类eigen::Isometry3d
的用法示例。
在下文中一共展示了Isometry3d::data方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: draw
void OpenGLRenderInterface::draw(dynamics::BodyNode* _node, bool _vizCol, bool _colMesh) {
if(_node == 0)
return;
// Get world transform
Eigen::Isometry3d pose;
pose = _node->getTransform();
// GL calls
if(_vizCol && _node->isColliding()) {
glDisable(GL_TEXTURE_2D);
glEnable(GL_COLOR_MATERIAL);
glColor3f(1.0f, .1f, .1f);
}
glPushMatrix();
glMultMatrixd(pose.data());
if(_colMesh) {
for (size_t i = 0; i < _node->getNumCollisionShapes(); i++)
draw(_node->getCollisionShape(i));
}
else {
for (size_t i = 0; i < _node->getNumVisualizationShapes(); i++)
draw(_node->getVisualizationShape(i));
}
glColor3f(1.0f,1.0f,1.0f);
glEnable( GL_TEXTURE_2D );
glDisable(GL_COLOR_MATERIAL);
glPopMatrix();
}
示例2: render_xform_arrows
void teleop_gui_t::render_xform_arrows(Eigen::Isometry3d xform, double alpha)
{
glPushMatrix();
glMultMatrixd(xform.data());
Eigen::Vector3d base = Eigen::Vector3d::Zero();
glColor4d(1,0,0,alpha);
yui::drawArrow3D(base, Eigen::Vector3d::UnitX(), 0.2, 0.01, 0.02);
glColor4d(0,1,0,alpha);
yui::drawArrow3D(base, Eigen::Vector3d::UnitY(), 0.2, 0.01, 0.02);
glColor4d(0,0,1,alpha);
yui::drawArrow3D(base, Eigen::Vector3d::UnitZ(), 0.2, 0.01, 0.02);
glPopMatrix();
}