|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface DeformableContactConstraint
Method Summary | |
---|---|
void |
addConstraintBlocks(SparseBlockMatrix GT,
int bj)
Adds matrix blocks for this constraint to a specified block column of the transposed constraint matrix. |
void |
addFrame(Frame frame,
double weight,
Point3d loc)
Adds a frame as a component for this constraint. |
int |
addFrictionConstraints(SparseBlockMatrix DT,
MechSystem.FrictionInfo[] finfo,
int numf)
|
void |
addPoint(Point pnt,
double weight)
Adds a point as a component for this constraint. |
void |
beginSet()
Begin the process of setting this constraint. |
boolean |
componentsChanged()
Returns true if the component structure of this constraint has changed. |
void |
endSet()
Concludes the process of setting this constraint. |
boolean |
equals(java.lang.Object obj)
|
void |
getAuxState(DataBuffer data,
CollisionData myData,
CollisionData otherData)
|
double |
getDerivative()
|
double |
getDistance()
|
double |
getFriction()
Returns the friction coefficent for this constraint. |
double |
getImpulse()
Returns the impulse associated with this constraint. |
Vector3d |
getNormal()
Returns the normal for this constraint. |
int |
getSolveIndex()
|
int |
hashCode()
|
boolean |
isActive()
Returns true if this constraint is marked as being active. |
boolean |
isAdded()
Returns true if the constraint is marked as being already added to the system |
boolean |
isControllable()
Returns true if at least one of the components associated with this constraint is controllable. |
int |
numFrames()
Returns the number of frames involved in the constraint |
int |
numPoints()
Returns the number of points involved in the constraint |
void |
print(java.io.PrintStream os)
|
void |
setActive(boolean active)
Marks this constraint as being inactive. |
void |
setAdded(boolean added)
Marks this constraint as being added to the system |
void |
setAuxState(DataBuffer data,
CollisionData myData,
CollisionData otherData)
|
void |
setDistance(double d)
|
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 |
void |
setFriction(double mu)
Sets the friction coefficient for this constraint. |
void |
setImpulse(double lam)
Sets the impulse associated with this constraint. |
void |
setSolveIndex(int idx)
|
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 |
void |
setVertices(Vertex3d... vtxs)
For creating a "stub" to quickly retrieve an existing constraint |
void |
skipAuxState(DataBuffer data)
|
void |
updateFriction()
|
Method Detail |
---|
int hashCode()
hashCode
in class java.lang.Object
void setVertices(Vertex3d... vtxs)
vtxs
- boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
int getSolveIndex()
void setSolveIndex(int idx)
double getDistance()
void setDistance(double d)
double getDerivative()
void addConstraintBlocks(SparseBlockMatrix GT, int bj)
GT
- transposed constraint matrixbj
- block column where blocks should be addedvoid setFriction(double mu)
double getFriction()
void updateFriction()
int addFrictionConstraints(SparseBlockMatrix DT, MechSystem.FrictionInfo[] finfo, int numf)
Vector3d getNormal()
double getImpulse()
void setImpulse(double lam)
boolean isActive()
void setActive(boolean active)
boolean isAdded()
void setAdded(boolean added)
void beginSet()
void endSet()
boolean componentsChanged()
boolean isControllable()
void skipAuxState(DataBuffer data)
void getAuxState(DataBuffer data, CollisionData myData, CollisionData otherData)
void setAuxState(DataBuffer data, CollisionData myData, CollisionData otherData)
void print(java.io.PrintStream os)
void setEdgeEdge(EdgeEdgeContact eec, double mu, DeformableCollisionData thisData, DeformableCollisionData otherData)
eec
- edge-edge contactmu
- friction coefficientthisData
- the primary deformable collision infootherData
- the other object's collision infovoid setEdgeRigidBody(EdgeEdgeContact eec, double mu, DeformableCollisionData thisData, RigidBodyCollisionData rbData)
eec
- edge-edge contactmu
- friction coefficientthisData
- the primary deformable collision inforbData
- the other object's collision infodouble setVertexRigidBody(ContactPenetratingPoint cpp, double mu, DeformableCollisionData thisData, RigidBodyCollisionData rbData, boolean useSignedDistanceCollider)
cpp
- contact penetrating pointmu
- friction coefficientthisData
- the primary deformable collision inforbData
- the other object's collision infouseSignedDistanceCollider
- flag for determining normal
and collision location information
double setFaceRigidBody(ContactPenetratingPoint cpp, double mu, DeformableCollisionData thisData, RigidBodyCollisionData rbData)
cpp
- contact penetrating pointmu
- friction coefficientthisData
- the primary deformable inforbData
- the other object's collision info
double setVertexDeformable(ContactPenetratingPoint cpp, double mu, DeformableCollisionData thisData, DeformableCollisionData otherData)
cpp
- contact penetrating pointmu
- friction coefficientthisData
- the primary deformable collision infootherData
- the other object's collision info
void addPoint(Point pnt, double weight)
pnt
- point to addweight
- weighting factor for the pointvoid addFrame(Frame frame, double weight, Point3d loc)
frame
- Frame to addloc
- location of the point in frame coordinatesint numPoints()
int numFrames()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |