Simbody
3.6
|
This algorithm detects contacts between a ContactGeometry::Sphere and a ContactGeometry::TriangleMesh. More...
Public Member Functions | |
virtual | ~SphereTriangleMesh () |
void | processObjects (ContactSurfaceIndex index1, const ContactGeometry &object1, const Transform &transform1, ContactSurfaceIndex index2, const ContactGeometry &object2, const Transform &transform2, Array_< Contact > &contacts) const override |
Identify contacts between a pair of bodies. More... | |
Public Member Functions inherited from SimTK::CollisionDetectionAlgorithm | |
virtual | ~CollisionDetectionAlgorithm () |
Additional Inherited Members | |
Static Public Member Functions inherited from SimTK::CollisionDetectionAlgorithm | |
static void | registerAlgorithm (ContactGeometryTypeId type1, ContactGeometryTypeId type2, CollisionDetectionAlgorithm *algorithm) |
Register a CollisionDetectionAlgorithm to be used for identifying contacts between bodies of two specific types. More... | |
static CollisionDetectionAlgorithm * | getAlgorithm (ContactGeometryTypeId type1, ContactGeometryTypeId type2) |
Get the CollisionDetectionAlgorithm to use for identifying contacts between bodies of two specific types. More... | |
This algorithm detects contacts between a ContactGeometry::Sphere and a ContactGeometry::TriangleMesh.
|
inlinevirtual |
|
overridevirtual |
Identify contacts between a pair of bodies.
index1 | the index of the first body within its contact set |
object1 | the ContactGeometry for the first body |
transform1 | the location and orientation of the first body in the ground frame |
index2 | the index of the second body within its contact set |
object2 | the ContactGeometry for the second body |
transform2 | the location and orientation of the second body in the ground frame |
contacts | if the bodies overlap, a Contact should be added to this for each distinct contact between them. (Multiple contacts may exist if one of the bodies is concave.) |
Implements SimTK::CollisionDetectionAlgorithm.