|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectartisynth.core.mechmodels.DeformableCollisionDataBase
artisynth.core.mfreemodels.MFreeCollisionData
public class MFreeCollisionData
Constructor Summary | |
---|---|
MFreeCollisionData(MFreeModel3d mod,
PolygonalMesh mesh)
|
Method Summary | |
---|---|
int |
addConstraintInfo(Vertex3d vtx,
Point3d constraintLoc,
double weight,
DeformableContactConstraint con)
Adds the point information from this object's vertex and weight to the
supplied constraint. |
void |
addContact(DeformableContactConstraint c)
Add contact constraint to set of constraints |
boolean |
allowCollision(ContactPenetratingPoint cpp,
boolean isVertex,
CollisionData otherData)
Allow a collision between this object and the supplied 'other'. |
MFreeContactConstraint |
createContact(Vertex3d... vtxs)
|
MFreeModel3d |
getComponent()
Returns the component involved in the collision |
int |
getVertexDependencies(Vertex3d vtx,
java.util.ArrayList<Point> pointDeps,
VectorNd pointWgts,
java.util.ArrayList<Frame> frameDeps,
VectorNd frameWgts)
Determines the set of points that a vertex's position is dependent upon, along with their weights (assuming a linear relationship) |
void |
markMasters(Vertex3d vtx,
boolean marked)
Mark the master dynamic components of vertex vtx
as being "used" |
int |
numActiveMasters(ContactPenetratingPoint cpp,
boolean isVertex)
|
int |
numActiveMasters(EdgeEdgeContact eec,
boolean isFirst)
|
int |
numActiveUnmarkedMasters(Vertex3d vtx)
Count the number of "free" master components for vertex vtx . |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public MFreeCollisionData(MFreeModel3d mod, PolygonalMesh mesh)
Method Detail |
---|
public MFreeModel3d getComponent()
CollisionData
public MFreeContactConstraint createContact(Vertex3d... vtxs)
public void addContact(DeformableContactConstraint c)
DeformableCollisionData
addContact
in interface DeformableCollisionData
addContact
in class DeformableCollisionDataBase
public boolean allowCollision(ContactPenetratingPoint cpp, boolean isVertex, CollisionData otherData)
DeformableCollisionData
cpp
- the contact-penetrating point involved between the two.isVertex
- if true, checks if we can allow collision based
on the vertex, otherwise if we are checking the faceotherData
- the other collision object involved
public int numActiveMasters(ContactPenetratingPoint cpp, boolean isVertex)
public int numActiveMasters(EdgeEdgeContact eec, boolean isFirst)
public int getVertexDependencies(Vertex3d vtx, java.util.ArrayList<Point> pointDeps, VectorNd pointWgts, java.util.ArrayList<Frame> frameDeps, VectorNd frameWgts)
DeformableCollisionData
vtx
- the vertex belonging to this
collision
datapointDeps
- list of points that is filledpointWgts
- weights associated with the returned pointsframeDeps
- list of frames that is filledframeWgts
- weights associated with the returned frames
public int addConstraintInfo(Vertex3d vtx, Point3d constraintLoc, double weight, DeformableContactConstraint con)
CollisionData
this
object's vertex and weight to the
supplied constraint.
addConstraintInfo
in interface CollisionData
addConstraintInfo
in class DeformableCollisionDataBase
vtx
- vertex belonging to this
objectconstraintLoc
- actual world location of constraintweight
- weight used in constraintcon
- the constraint to modify
public void markMasters(Vertex3d vtx, boolean marked)
CollisionData
vtx
as being "used"
public int numActiveUnmarkedMasters(Vertex3d vtx)
CollisionData
vtx
.
Used for determining whether or not a collision should be allowed.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |