//----------------------------------------------------------------------------
bool ConvexPolyhedron::FindIntersection (const ConvexPolyhedron& rkPoly,
        ConvexPolyhedron& rkIntr) const
{
    ConvexClipper kClipper(*this);

    const vector<Plane>& rakPlane = rkPoly.GetPlanes();
    for (int i = 0; i < (int)rakPlane.size(); i++)
    {
        if ( kClipper.Clip(rakPlane[i]) == Plane::NEGATIVE_SIDE )
            return false;
    }

    kClipper.Convert(rkIntr);
    return true;
}