artisynth.core.mfreemodels
Class MFreeContactConstraint

java.lang.Object
  extended by artisynth.core.mechmodels.DeformableContactConstraintBase
      extended by artisynth.core.mechmodels.DeformableContactConstraintGeneric
          extended by artisynth.core.mfreemodels.MFreeContactConstraint
All Implemented Interfaces:
DeformableContactConstraint

public class MFreeContactConstraint
extends DeformableContactConstraintGeneric


Nested Class Summary
 
Nested classes/interfaces inherited from class artisynth.core.mechmodels.DeformableContactConstraintBase
DeformableContactConstraintBase.CompInfo, DeformableContactConstraintBase.FrameInfo, DeformableContactConstraintBase.PointInfo
 
Field Summary
 
Fields inherited from class artisynth.core.mechmodels.DeformableContactConstraintBase
BODY_FACE, EDGE_BODY, EDGE_EDGE, VERTEX_BODY, VERTEX_FACE
 
Constructor Summary
MFreeContactConstraint(Vertex3d... vtxs)
          Creates a new contact constraint identified by three vertices.
 
Method Summary
 void setEdgeEdge(EdgeEdgeContact eec, double mu, DeformableCollisionData thisData, DeformableCollisionData otherData)
          Assigns an edge-edge collision
 void setEdgeRigidBody(EdgeEdgeContact eec, double mu, DeformableCollisionData thisData, RigidBodyCollisionData rbData)
          Assigns an edge-rigidBody collision
 double setFaceRigidBody(ContactPenetratingPoint cpp, double mu, DeformableCollisionData thisData, RigidBodyCollisionData rbData)
          Assigns a Face->RigidBody collision, returning the perpendicular distance to the face
 double setVertexDeformable(ContactPenetratingPoint cpp, double mu, DeformableCollisionData thisData, DeformableCollisionData otherData)
          Assigns a Vertex->Deformable collision, returning the perpendicular distance to the face
 double setVertexRigidBody(ContactPenetratingPoint cpp, double mu, DeformableCollisionData thisData, RigidBodyCollisionData rbData, boolean useSignedDistanceCollider)
          Assigns a Vertex->Rigid body collision, returning the perpendicular distance to the face
 
Methods inherited from class artisynth.core.mechmodels.DeformableContactConstraintGeneric
clearVertices, equals, getVertices, hashCode, print, setVertexFace, setVertices, toString
 
Methods inherited from class artisynth.core.mechmodels.DeformableContactConstraintBase
addConstraintBlocks, addFrame, addFrictionConstraints, addPoint, beginSet, componentsChanged, endSet, getAuxState, getDerivative, getDistance, getFriction, getImpulse, getNormal, getSolveIndex, isActive, isAdded, isControllable, numFrames, numPoints, printConstraintInfo, setActive, setAdded, setAuxState, setBodyFace, setDistance, setEdgeBody, setEdgeEdge, setFriction, setImpulse, setSolveIndex, setVertexBody, setVertexFace, skipAuxState, updateFriction
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MFreeContactConstraint

public MFreeContactConstraint(Vertex3d... vtxs)
Creates a new contact constraint identified by three vertices.

Method Detail

setVertexRigidBody

public double setVertexRigidBody(ContactPenetratingPoint cpp,
                                 double mu,
                                 DeformableCollisionData thisData,
                                 RigidBodyCollisionData rbData,
                                 boolean useSignedDistanceCollider)
Description copied from interface: DeformableContactConstraint
Assigns a Vertex->Rigid body collision, returning the perpendicular distance to the face

Specified by:
setVertexRigidBody in interface DeformableContactConstraint
Overrides:
setVertexRigidBody in class DeformableContactConstraintGeneric
Parameters:
cpp - contact penetrating point
mu - friction coefficient
thisData - the primary deformable collision info
rbData - the other object's collision info
useSignedDistanceCollider - flag for determining normal and collision location information
Returns:
perpendicular distance to face

setFaceRigidBody

public double setFaceRigidBody(ContactPenetratingPoint cpp,
                               double mu,
                               DeformableCollisionData thisData,
                               RigidBodyCollisionData rbData)
Description copied from interface: DeformableContactConstraint
Assigns a Face->RigidBody collision, returning the perpendicular distance to the face

Specified by:
setFaceRigidBody in interface DeformableContactConstraint
Overrides:
setFaceRigidBody in class DeformableContactConstraintGeneric
Parameters:
cpp - contact penetrating point
mu - friction coefficient
thisData - the primary deformable info
rbData - the other object's collision info
Returns:
perpendicular distance to face

setEdgeRigidBody

public void setEdgeRigidBody(EdgeEdgeContact eec,
                             double mu,
                             DeformableCollisionData thisData,
                             RigidBodyCollisionData rbData)
Description copied from interface: DeformableContactConstraint
Assigns an edge-rigidBody collision

Specified by:
setEdgeRigidBody in interface DeformableContactConstraint
Overrides:
setEdgeRigidBody in class DeformableContactConstraintGeneric
Parameters:
eec - edge-edge contact
mu - friction coefficient
thisData - the primary deformable collision info
rbData - the other object's collision info

setEdgeEdge

public void setEdgeEdge(EdgeEdgeContact eec,
                        double mu,
                        DeformableCollisionData thisData,
                        DeformableCollisionData otherData)
Description copied from interface: DeformableContactConstraint
Assigns an edge-edge collision

Specified by:
setEdgeEdge in interface DeformableContactConstraint
Overrides:
setEdgeEdge in class DeformableContactConstraintGeneric
Parameters:
eec - edge-edge contact
mu - friction coefficient
thisData - the primary deformable collision info
otherData - the other object's collision info

setVertexDeformable

public double setVertexDeformable(ContactPenetratingPoint cpp,
                                  double mu,
                                  DeformableCollisionData thisData,
                                  DeformableCollisionData otherData)
Description copied from interface: DeformableContactConstraint
Assigns a Vertex->Deformable collision, returning the perpendicular distance to the face

Specified by:
setVertexDeformable in interface DeformableContactConstraint
Overrides:
setVertexDeformable in class DeformableContactConstraintGeneric
Parameters:
cpp - contact penetrating point
mu - friction coefficient
thisData - the primary deformable collision info
otherData - the other object's collision info
Returns:
perpendicular distance to face