diff --git a/src/narrowphase/narrowphase.cpp b/src/narrowphase/narrowphase.cpp index 0931513aa39b7fcc553dfd2af4d80ebb5f3689ec..08c9e59d198dcc9ce658abaafd48ede89e24448e 100644 --- a/src/narrowphase/narrowphase.cpp +++ b/src/narrowphase/narrowphase.cpp @@ -2557,27 +2557,25 @@ bool planeIntersect(const Plane& s1, const Transform3f& tf1, // Shape intersect algorithms not using libccd // -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | | box | ellipsoid | sphere | capsule | cone | cylinder | plane | half-space | triangle | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | box | O | | | | | | O | O | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | ellipsoid |/////| | | | | | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | sphere |/////|///////////| O | O | | | O | O | O | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | capsule |/////|///////////|////////| | | | O | O | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | cone |/////|///////////|////////|/////////| | | O | O | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | cylinder |/////|///////////|////////|/////////|//////| | O | O | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | plane |/////|///////////|////////|/////////|//////|//////////| O | O | O | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | half-space |/////|///////////|////////|/////////|//////|//////////|///////| O | O | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | triangle |/////|///////////|////////|/////////|//////|//////////|///////|////////////| | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | | box | sphere | capsule | cone | cylinder | plane | half-space | triangle | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | box | O | | | | | O | O | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | sphere |/////| O | O | | | O | O | O | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | capsule |/////|////////| | | | O | O | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | cone |/////|////////|/////////| | | O | O | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | cylinder |/////|////////|/////////|//////| | O | O | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | plane |/////|////////|/////////|//////|//////////| O | O | O | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | half-space |/////|////////|/////////|//////|//////////|///////| O | O | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | triangle |/////|////////|/////////|//////|//////////|///////|////////////| | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ template<> bool GJKSolver_libccd::shapeIntersect<Sphere, Capsule>(const Sphere &s1, const Transform3f& tf1, @@ -2870,27 +2868,25 @@ bool GJKSolver_libccd::shapeTriangleIntersect(const Plane& s, const Transform3f& // Shape distance algorithms not using libccd // -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | | box | ellipsoid | sphere | capsule | cone | cylinder | plane | half-space | triangle | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | box | | | | | | | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | ellipsoid |/////| | | | | | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | sphere |/////|///////////| O | O | | | | | O | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | capsule |/////|///////////|////////| O | | | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | cone |/////|///////////|////////|/////////| | | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | cylinder |/////|///////////|////////|/////////|//////| | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | plane |/////|///////////|////////|/////////|//////|//////////| | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | half-space |/////|///////////|////////|/////////|//////|//////////|///////| | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | triangle |/////|///////////|////////|/////////|//////|//////////|///////|////////////| | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | | box | sphere | capsule | cone | cylinder | plane | half-space | triangle | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | box | | | | | | | | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | sphere |/////| O | O | | | | | O | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | capsule |/////|////////| O | | | | | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | cone |/////|////////|/////////| | | | | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | cylinder |/////|////////|/////////|//////| | | | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | plane |/////|////////|/////////|//////|//////////| | | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | half-space |/////|////////|/////////|//////|//////////|///////| | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | triangle |/////|////////|/////////|//////|//////////|///////|////////////| | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ template<> bool GJKSolver_libccd::shapeDistance<Sphere, Capsule>(const Sphere& s1, const Transform3f& tf1, @@ -2945,27 +2941,25 @@ bool GJKSolver_libccd::shapeTriangleDistance<Sphere>(const Sphere& s, const Tran // Shape intersect algorithms not using built-in GJK algorithm // -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | | box | ellipsoid | sphere | capsule | cone | cylinder | plane | half-space | triangle | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | box | O | | | | | | O | O | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | ellipsoid |/////| | | | | | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | sphere |/////|///////////| O | O | | | O | O | O | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | capsule |/////|///////////|////////| | | | O | O | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | cone |/////|///////////|////////|/////////| | | O | O | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | cylinder |/////|///////////|////////|/////////|//////| | O | O | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | plane |/////|///////////|////////|/////////|//////|//////////| O | O | O | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | half-space |/////|///////////|////////|/////////|//////|//////////|///////| O | O | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | triangle |/////|///////////|////////|/////////|//////|//////////|///////|////////////| | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | | box | sphere | capsule | cone | cylinder | plane | half-space | triangle | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | box | O | | | | | O | O | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | sphere |/////| O | O | | | O | O | O | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | capsule |/////|////////| | | | O | O | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | cone |/////|////////|/////////| | | O | O | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | cylinder |/////|////////|/////////|//////| | O | O | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | plane |/////|////////|/////////|//////|//////////| O | O | O | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | half-space |/////|////////|/////////|//////|//////////|///////| O | O | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | triangle |/////|////////|/////////|//////|//////////|///////|////////////| | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ template<> bool GJKSolver_indep::shapeIntersect<Sphere, Capsule>(const Sphere &s1, const Transform3f& tf1, @@ -3258,27 +3252,25 @@ bool GJKSolver_indep::shapeTriangleIntersect(const Plane& s, const Transform3f& // Shape distance algorithms not using built-in GJK algorithm // -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | | box | ellipsoid | sphere | capsule | cone | cylinder | plane | half-space | triangle | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | box | | | | | | | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | ellipsoid |/////| | | | | | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | sphere |/////|///////////| O | O | | | | | O | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | capsule |/////|///////////|////////| O | | | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | cone |/////|///////////|////////|/////////| | | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | cylinder |/////|///////////|////////|/////////|//////| | | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | plane |/////|///////////|////////|/////////|//////|//////////| | | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | half-space |/////|///////////|////////|/////////|//////|//////////|///////| | | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ -// | triangle |/////|///////////|////////|/////////|//////|//////////|///////|////////////| | -// +------------+-----+-----------+--------+---------+------+----------+-------+------------+----------+ +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | | box | sphere | capsule | cone | cylinder | plane | half-space | triangle | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | box | | | | | | | | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | sphere |/////| O | O | | | | | O | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | capsule |/////|////////| O | | | | | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | cone |/////|////////|/////////| | | | | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | cylinder |/////|////////|/////////|//////| | | | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | plane |/////|////////|/////////|//////|//////////| | | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | half-space |/////|////////|/////////|//////|//////////|///////| | | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ +// | triangle |/////|////////|/////////|//////|//////////|///////|////////////| | +// +------------+-----+--------+---------+------+----------+-------+------------+----------+ template<> bool GJKSolver_indep::shapeDistance<Sphere, Capsule>(const Sphere& s1, const Transform3f& tf1,