本文整理汇总了C++中QUATERNION::x方法的典型用法代码示例。如果您正苦于以下问题:C++ QUATERNION::x方法的具体用法?C++ QUATERNION::x怎么用?C++ QUATERNION::x使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QUATERNION
的用法示例。
在下文中一共展示了QUATERNION::x方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: restBaryCenter
bool TET::restBaryCenter(const VEC3F& vert, QUATERNION& lambda)
{
VEC3F row[3];
row[0] = *(_restVertices[0]) - *(_restVertices[3]);
row[1] = *(_restVertices[1]) - *(_restVertices[3]),
row[2] = *(_restVertices[2]) - *(_restVertices[3]);
MATRIX3 T;
T << row[0][0], row[1][0], row[2][0],
row[0][1], row[1][1], row[2][1],
row[0][2], row[1][2], row[2][2];
VEC3F lambda0_3 = T.inverse() * (vert - *(_restVertices[3]));
lambda.x() = lambda0_3[0];
lambda.y() = lambda0_3[1];
lambda.z() = lambda0_3[2];
lambda.w() = 1.0 - lambda.x() - lambda.y() - lambda.z();
if(!(
0 <= lambda.x() && lambda.x() <= 1
&& 0 <= lambda.y() && lambda.y() <= 1
&& 0 <= lambda.z() && lambda.z() <= 1
&& 0 <= lambda.w() && lambda.w() <= 1) )
return false;
return true;
}