![]() |
MassSpring frictionless contact implementation. More...
#include <SurgSim/Physics/MassSpringRepresentationContact.h>
Public Member Functions | |
MassSpringRepresentationContact () | |
Constructor. More... | |
virtual | ~MassSpringRepresentationContact () |
Destructor. More... | |
virtual SurgSim::Math::MlcpConstraintType | getMlcpConstraintType () const override |
Gets the Mixed Linear Complementarity Problem constraint type for this ConstraintImplementation. More... | |
virtual RepresentationType | getRepresentationType () const override |
Gets the Type of representation that this implementation is concerned with. More... | |
![]() | |
ConstraintImplementation () | |
Constructor. More... | |
virtual | ~ConstraintImplementation () |
Destructor. More... | |
size_t | getNumDof () const |
Gets the number of degree of freedom for this implementation. More... | |
void | build (double dt, const ConstraintData &data, const std::shared_ptr< Localization > &localization, MlcpPhysicsProblem *mlcp, size_t indexOfRepresentation, size_t indexOfConstraint, ConstraintSideSign sign) |
Builds the subset of an Mlcp physics problem associated to this implementation. More... | |
Private Member Functions | |
virtual size_t | doGetNumDof () const override |
Gets the number of degrees of freedom for a frictionless contact. More... | |
virtual void | doBuild (double dt, const ConstraintData &data, const std::shared_ptr< Localization > &localization, MlcpPhysicsProblem *mlcp, size_t indexOfRepresentation, size_t indexOfConstraint, ConstraintSideSign sign) override |
Adds a mass-spring frictionless contact constraint to an MlcpPhysicsProblem. More... | |
Additional Inherited Members | |
![]() | |
Eigen::SparseVector< double, 0, ptrdiff_t > | m_newH |
Preallocated variable for derived implementations of doBuild. More... | |
MassSpring frictionless contact implementation.
MassSpringRepresentationContact implements the frictionless contact constraint for the MassSpringRepresentation, which prevents nodes from passing through a surface. See MassSpringRepresentationContact::doBuild for more information.
SurgSim::Physics::MassSpringRepresentationContact::MassSpringRepresentationContact | ( | ) |
Constructor.
|
virtual |
Destructor.
|
overrideprivatevirtual |
Adds a mass-spring frictionless contact constraint to an MlcpPhysicsProblem.
dt | The time step. | |
data | [ContactConstraintData] Plane defining the constraint. | |
localization | [MassSpringRepresentationLocalization] Location and Representation to be constrained. | |
[in,out] | mlcp | The Mixed LCP physics problem to fill up. |
indexOfRepresentation | The index of the representation (associated to this implementation) in the mlcp. | |
indexOfConstraint | The index of the constraint in the mlcp. | |
sign | The sign of this implementation in the constraint (positive or negative side). |
Implements SurgSim::Physics::ConstraintImplementation.
|
overrideprivatevirtual |
Gets the number of degrees of freedom for a frictionless contact.
Implements SurgSim::Physics::ConstraintImplementation.
|
overridevirtual |
Gets the Mixed Linear Complementarity Problem constraint type for this ConstraintImplementation.
Implements SurgSim::Physics::ConstraintImplementation.
|
overridevirtual |
Gets the Type of representation that this implementation is concerned with.
Implements SurgSim::Physics::ConstraintImplementation.