Simbody
3.5
|
This ContactTracker handles contacts between a ContactGeometry::HalfSpace and any ContactGeometry that can be considered a convex, implicit surface, in that order. More...
Public Member Functions | |
HalfSpaceConvexImplicit (ContactGeometryTypeId typeOfConvexImplicitSurface) | |
bool | trackContact (const Contact &priorStatus, const Transform &X_GS1, const ContactGeometry &surface1, const Transform &X_GS2, const ContactGeometry &surface2, Real cutoff, Contact ¤tStatus) const override |
The ContactTrackerSubsystem will invoke this method for any pair of contact surfaces that is already being tracked, or for which the static broad phase analysis indicated that they might be in contact now. |
This ContactTracker handles contacts between a ContactGeometry::HalfSpace and any ContactGeometry that can be considered a convex, implicit surface, in that order.
Don't use this if you know a faster way to deal with a particular kind of ContactGeometry; this is last-ditch support for when you don't have a better method. Create one of these trackers for each type of convex implicit geometry for which you want to use this method.
SimTK::ContactTracker::HalfSpaceConvexImplicit::HalfSpaceConvexImplicit | ( | ContactGeometryTypeId | typeOfConvexImplicitSurface | ) | [inline, explicit] |
bool SimTK::ContactTracker::HalfSpaceConvexImplicit::trackContact | ( | const Contact & | priorStatus, |
const Transform & | X_GS1, | ||
const ContactGeometry & | surface1, | ||
const Transform & | X_GS2, | ||
const ContactGeometry & | surface2, | ||
Real | cutoff, | ||
Contact & | currentStatus | ||
) | const [override, virtual] |
The ContactTrackerSubsystem will invoke this method for any pair of contact surfaces that is already being tracked, or for which the static broad phase analysis indicated that they might be in contact now.
Only position information is available. Note that the arguments and Contact object surfaces must be ordered by geometry type id as required by this tracker.
Implements SimTK::ContactTracker.