Constructor for an Equation
The Jacobian entry of this equation. 6 numbers, 3 per body (x,y,angle).
First body participating in the constraint
Second body participating in the constraint
ContactEquations connected to this friction equation. The contact equations can be used to rescale the max force for the friction. If more than one contact equation is given, then the max force can be set to the average.
Relative vector from center of body A to the contact point, world oriented.
Relative vector from center of body B to the contact point, world oriented.
Whether this equation is enabled or not. If true, it will be added to the solver.
The friction coefficient to use.
Cap the constraint violation (G*q) to this value.
Max force to apply when solving.
Minimum force to apply when solving.
The resulting constraint multiplier from the last solve. This is mostly equivalent to the force produced by the constraint.
Indicates if stiffness or relaxation was changed.
Relative velocity.
The number of time steps needed to stabilize the constraint equation. Typically between 3 and 5 time steps.
The shape in body i that triggered this friction.
The shape in body j that triggered this friction.
The stiffness of this equation. Typically chosen to a large number (~1e7), but can be chosen somewhat freely to get a stable simulation.
Tangent vector that the friction force will act along. World oriented.
The default relaxation when creating a new Equation.
The default stiffness when creating a new Equation.
Add constraint velocity to the bodies.
Computes the RHS of the SPOOK equation
Computes G*W, where W are the body velocities
Computes G*Wlambda, where W are the body velocities
Computes G*inv(M)*G'
Computes G*inv(M)*f, where M is the mass matrix with diagonal blocks for each body, and f are the forces on the bodies.
Computes G*q, where q are the generalized body coordinates
Compute the denominator part of the SPOOK equation: C = G*inv(M)*G' + eps
Get the max force for the constraint.
Set the slipping condition for the constraint. The friction force cannot be larger than this value.
Constrains the slipping in a contact along a tangent