本文整理汇总了C++中Pose::Matrix方法的典型用法代码示例。如果您正苦于以下问题:C++ Pose::Matrix方法的具体用法?C++ Pose::Matrix怎么用?C++ Pose::Matrix使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Pose
的用法示例。
在下文中一共展示了Pose::Matrix方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: glcolorbox
void glcolorbox(const float3 &r, const Pose &p) // p = { { 0, 0, 0 }, { 0, 0, 0, 1 } })
{
glPushMatrix();
glMultMatrixf(p.Matrix());
glBegin(GL_QUADS);
for (int m : {0, 1}) for (int i : {0, 1, 2})
{
int i1 = (i + 1 + m) % 3;
int i2 = (i + 2 - m) % 3;
float3 u, v, w;
u[i1] = r[i1];
v[i2] = r[i2];
w[i] = (m) ? -1.0f : 1.0f;
float3 a((float)m, (float)m, (float)m);
a[i] = 1-a[i];
glColor3fv(a);
glNormal3fv(w);
float2 corners[] = { { -1.0f, -1.0f }, { 1.0f, -1.0f }, { 1.0f, 1.0f }, { -1.0f, 1.0f } }; // ccw order
for (float2 t : corners)
glTexCoord2fv(t), glVertex3fv(w*r[i] + u*t.x + v*t.y);
}
glEnd();
glPopMatrix();
}
示例2: wmdraw
void wmdraw(const WingMesh &m, const Pose &pose) { glPushMatrix(); glMultMatrixf(pose.Matrix()); wmdraw(m); glPopMatrix(); }