コード例 #1
0
Real DistVector2Ray2<Real>::GetSquared (Real fT,
    const Vector2<Real>& rkVelocity0, const Vector2<Real>& rkVelocity1)
{
    Vector2<Real> kMVector = m_rkVector + fT*rkVelocity0;
    Vector2<Real> kMOrigin = m_rkRay.Origin + fT*rkVelocity1;
    Ray2<Real> kMRay(kMOrigin,m_rkRay.Direction);
    return DistVector2Ray2<Real>(kMVector,kMRay).GetSquared();
}
コード例 #2
0
Real DistRay2Segment2<Real>::GetSquared (Real fT,
    const Vector2<Real>& rkVelocity0, const Vector2<Real>& rkVelocity1)
{
    Vector2<Real> kMOrigin0 = m_pkRay->Origin + fT*rkVelocity0;
    Vector2<Real> kMOrigin1 = m_pkSegment->Origin + fT*rkVelocity1;
    Ray2<Real> kMRay(kMOrigin0,m_pkRay->Direction);
    Segment2<Real> kMSegment(kMOrigin1,m_pkSegment->Direction,
        m_pkSegment->Extent);
    return DistRay2Segment2<Real>(kMRay,kMSegment).GetSquared();
}