Interface ISolverContactDataExtractor
- Namespace
- BepuPhysics.Constraints.Contact
- Assembly
- BepuPhysics.dll
Callbacks for direct references to the solver's contact constraint data.
public interface ISolverContactDataExtractor
Methods
ConvexOneBody<TPrestep, TAccumulatedImpulses>(BodyHandle, ref TPrestep, ref TAccumulatedImpulses)
Provides a reference to a convex one body contact constraint. Constraint data is in the first lane of the direct reference (slot 0 of vectors).
void ConvexOneBody<TPrestep, TAccumulatedImpulses>(BodyHandle bodyHandle, ref TPrestep prestep, ref TAccumulatedImpulses impulses) where TPrestep : struct, IConvexContactPrestep<TPrestep> where TAccumulatedImpulses : struct, IConvexContactAccumulatedImpulses<TAccumulatedImpulses>
Parameters
bodyHandle
BodyHandleBody handle referenced by the constraint.
prestep
TPrestepPrestep data associated with the constraint.
impulses
TAccumulatedImpulsesAccumulated impulses associated with the constraint.
Type Parameters
TPrestep
Type of the prestep data returned.
TAccumulatedImpulses
Type of the accumulated impulses data returned.
ConvexTwoBody<TPrestep, TAccumulatedImpulses>(BodyHandle, BodyHandle, ref TPrestep, ref TAccumulatedImpulses)
Provides a reference to a convex two body contact constraint. Constraint data is in the first lane of the direct reference (slot 0 of vectors).
void ConvexTwoBody<TPrestep, TAccumulatedImpulses>(BodyHandle bodyHandleA, BodyHandle bodyHandleB, ref TPrestep prestep, ref TAccumulatedImpulses impulses) where TPrestep : struct, ITwoBodyConvexContactPrestep<TPrestep> where TAccumulatedImpulses : struct, IConvexContactAccumulatedImpulses<TAccumulatedImpulses>
Parameters
bodyHandleA
BodyHandleFirst body handle referenced by the constraint.
bodyHandleB
BodyHandleSecond body handle referenced by the constraint.
prestep
TPrestepPrestep data associated with the constraint.
impulses
TAccumulatedImpulsesAccumulated impulses associated with the constraint.
Type Parameters
TPrestep
Type of the prestep data returned.
TAccumulatedImpulses
Type of the accumulated impulses data returned.
NonconvexOneBody<TPrestep, TAccumulatedImpulses>(BodyHandle, ref TPrestep, ref TAccumulatedImpulses)
Provides a reference to a nonconvex one body contact constraint. Constraint data is in the first lane of the direct reference (slot 0 of vectors).
void NonconvexOneBody<TPrestep, TAccumulatedImpulses>(BodyHandle bodyHandle, ref TPrestep prestep, ref TAccumulatedImpulses impulses) where TPrestep : struct, INonconvexContactPrestep<TPrestep> where TAccumulatedImpulses : struct, INonconvexContactAccumulatedImpulses<TAccumulatedImpulses>
Parameters
bodyHandle
BodyHandleBody handle referenced by the constraint.
prestep
TPrestepPrestep data associated with the constraint.
impulses
TAccumulatedImpulsesAccumulated impulses associated with the constraint.
Type Parameters
TPrestep
Type of the prestep data returned.
TAccumulatedImpulses
Type of the accumulated impulses data returned.
NonconvexTwoBody<TPrestep, TAccumulatedImpulses>(BodyHandle, BodyHandle, ref TPrestep, ref TAccumulatedImpulses)
Provides a reference to a nonconvex two body contact constraint. Constraint data is in the first lane of the direct reference (slot 0 of vectors).
void NonconvexTwoBody<TPrestep, TAccumulatedImpulses>(BodyHandle bodyHandleA, BodyHandle bodyHandleB, ref TPrestep prestep, ref TAccumulatedImpulses impulses) where TPrestep : struct, ITwoBodyNonconvexContactPrestep<TPrestep> where TAccumulatedImpulses : struct, INonconvexContactAccumulatedImpulses<TAccumulatedImpulses>
Parameters
bodyHandleA
BodyHandleFirst body handle referenced by the constraint.
bodyHandleB
BodyHandleSecond body handle referenced by the constraint.
prestep
TPrestepPrestep data associated with the constraint.
impulses
TAccumulatedImpulsesAccumulated impulses associated with the constraint.
Type Parameters
TPrestep
Type of the prestep data returned.
TAccumulatedImpulses
Type of the accumulated impulses data returned.