本文整理汇总了C++中BoxCollider::Min方法的典型用法代码示例。如果您正苦于以下问题:C++ BoxCollider::Min方法的具体用法?C++ BoxCollider::Min怎么用?C++ BoxCollider::Min使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BoxCollider
的用法示例。
在下文中一共展示了BoxCollider::Min方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Fits
bool BoxCollider::Fits( const BoxCollider &AABB ) const
{
bool xAxis = ( Min().x <= AABB.Min().x && Max().x >= AABB.Max().x);
bool yAxis = ( Min().y <= AABB.Min().y && Max().y >= AABB.Max().y);
bool zAxis = ( Min().z <= AABB.Min().z && Max().z >= AABB.Max().z);
return xAxis && yAxis && zAxis;
}
示例2: ClosestPtToAABB
void ClosestPtToAABB( glm::vec3& p, const BoxCollider& AABB )
{
glm::vec3 min = AABB.Min();
glm::vec3 max = AABB.Max();
glm::clamp( p.x, min.x, max.x );
glm::clamp( p.y, min.y, max.y );
glm::clamp( p.z, min.z, max.z );
}
示例3: SqrDistPointAABB
float SqrDistPointAABB( glm::vec3 &point, const BoxCollider &AABB )
{
float sqrDist( 0.0f);
glm::vec3 min = AABB.Min();
glm::vec3 max = AABB.Max();
if (point.x < min.x) sqrDist += ( min.x - point.x) * ( min.x - point.x);
if (point.x > max.x) sqrDist += ( point.x - max.x) * ( point.x - max.x);
if (point.y < min.y) sqrDist += ( min.y - point.y) * ( min.y - point.y);
if (point.y > max.y) sqrDist += ( point.y - max.y) * ( point.y - max.y);
if (point.z < min.z) sqrDist += ( min.z - point.z) * ( min.z - point.z);
if (point.z > max.z) sqrDist += ( point.z - max.z) * ( point.z - max.z);
return sqrDist;
}