本文整理汇总了C++中BoundingSphere::getCenter方法的典型用法代码示例。如果您正苦于以下问题:C++ BoundingSphere::getCenter方法的具体用法?C++ BoundingSphere::getCenter怎么用?C++ BoundingSphere::getCenter使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BoundingSphere
的用法示例。
在下文中一共展示了BoundingSphere::getCenter方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: Contains
bool BoundingSphere::Contains(const BoundingSphere &other, Vector3 & toOther, Vector3 & otherFarEnd)
{
toOther = other.getCenter() - m_Center;
toOther.Normalize();
otherFarEnd = other.getCenter() + toOther*other.GetRadius();
Vector3 toOtherFarEnd = otherFarEnd - m_Center;
return toOtherFarEnd.Length2() < m_SquareRadius;
}
示例2: intersects
bool BoundingEllipsoid::intersects(BoundingSphere &bs, CollisionResultSet::Info& info) {
//We do the same for check the collision with a circle, except taht the circle have only 1 ray.
//The equation for the circle is then a bit different.
math::Ray r(bs.getCenter(), center);
math::Vec3f near, far;
if (!intersectsWhere(r, near, far, info))
return false;
math::Vec3f d = far - center;
return (center.computeDistSquared(bs.getCenter()) - bs.getRadius() * bs.getRadius() - d.magnSquared()) <= 0;
}
示例3: ContainsOther
void BoundingSphere::operator +=(const BoundingSphere &other)
{
Vector3 toOther, otherFarEnd, toSelf, selfNearEnd;
bool containOther, containSelf;
containOther = ContainsOther(*this, other, toOther, otherFarEnd);
if (containOther) return;
containSelf = ContainsOther(other, *this, toSelf, selfNearEnd);
if (containSelf)
{
m_Center = other.getCenter();
m_Radius = other.GetRadius();
m_SquareRadius = other.GetSquaredRadius();
m_ElongatedDim = other.GetElongatedDim();
return;
}
init(selfNearEnd, otherFarEnd);
//if (!Contains(other, toOther, otherFarEnd))
//{
// //Vector3 selfNearEnd = m_Center - m_Radius*toOther;
// //init(selfNearEnd, otherFarEnd);
//}
}