本文整理汇总了C++中OBB::Enclose方法的典型用法代码示例。如果您正苦于以下问题:C++ OBB::Enclose方法的具体用法?C++ OBB::Enclose怎么用?C++ OBB::Enclose使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OBB
的用法示例。
在下文中一共展示了OBB::Enclose方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: MinimalEnclosingOBB
OBB Frustum::MinimalEnclosingOBB(float expandGuardband) const
{
assume(IsFinite());
assume(front.IsNormalized());
assume(up.IsNormalized());
OBB obb;
obb.pos = pos + (nearPlaneDistance + farPlaneDistance) * 0.5f * front;
obb.axis[1] = up;
obb.axis[2] = -front;
obb.axis[0] = Cross(obb.axis[1], obb.axis[2]);
obb.r = float3::zero;
for(int i = 0; i < 8; ++i)
obb.Enclose(CornerPoint(i));
// Expand the generated OBB very slightly to avoid numerical issues when
// testing whether this Frustum actually is contained inside the generated OBB.
obb.r.x += expandGuardband;
obb.r.y += expandGuardband;
obb.r.z += expandGuardband;
return obb;
}