//---------------------------------------------------------------------------- void SEBoxBV::TransformBy(const SETransformation& rTransform, SEBoundingVolume* pResult) { SEBox3f& rTarget = ((SEBoxBV*)pResult)->m_Box; rTransform.ApplyForwardToPoint(m_Box.Center, rTarget.Center); for( int i = 0; i < 3; ++i ) { rTarget.Axis[i] = m_Box.Axis[i] * rTransform.GetRotate(); rTarget.Extent[i] = rTransform.GetNorm() * m_Box.Extent[i]; } }