artisynth.core.mechmodels
Class CollisionHandler

java.lang.Object
  extended by artisynth.core.modelbase.ModelComponentBase
      extended by artisynth.core.modelbase.RenderableComponentBase
          extended by artisynth.core.mechmodels.ConstrainerBase
              extended by artisynth.core.mechmodels.CollisionHandler
All Implemented Interfaces:
Constrainer, HasAuxState, ModelComponent, RenderableComponent, java.lang.Cloneable, HasProperties, HierarchyNode, GLRenderable, GLSelectable, HasRenderProps, Renderable, Scannable
Direct Known Subclasses:
CollisionHandlerGeneric, CollisionHandlerOld

public abstract class CollisionHandler
extends ConstrainerBase
implements HasRenderProps, GLRenderable


Nested Class Summary
 
Nested classes/interfaces inherited from interface artisynth.core.mechmodels.HasAuxState
HasAuxState.StateContext
 
Nested classes/interfaces inherited from interface artisynth.core.modelbase.ModelComponent
ModelComponent.NavpanelVisibility
 
Field Summary
static boolean computeTimings
           
static boolean doBodyFaceContact
           
static PropertyList myProps
           
static boolean reduceConstraints
           
static boolean useSignedDistanceCollider
           
 
Fields inherited from class artisynth.core.modelbase.ModelComponentBase
enforceUniqueCompositeNames, enforceUniqueNames, myNumber, NULL_OBJ, useCompactPathNames
 
Fields inherited from interface maspack.render.GLRenderable
TRANSLUCENT, TWO_DIMENSIONAL
 
Constructor Summary
CollisionHandler()
           
 
Method Summary
abstract  void autoComputeCompliance(double collisionAccel, double penTol)
           
 PropertyList getAllPropertyInfo()
          Returns a list giving static information about all properties exported by this object.
abstract  Collidable getCollidable(int idx)
           
abstract  Collidable getCollidable0()
           
abstract  Collidable getCollidable1()
           
abstract  double getCompliance()
           
abstract  double getDamping()
           
abstract  double getFriction()
           
abstract  double getPenetrationTol()
           
abstract  double getRigidPointTolerance()
           
abstract  double getRigidRegionTolerance()
           
abstract  boolean hasActiveContacts()
          Checks if this collision handler has any active contact constraints
abstract  boolean isDrawIntersectionContours()
           
abstract  boolean isDrawIntersectionFaces()
           
abstract  boolean isDrawIntersectionPoints()
           
abstract  void render(GLRenderer renderer, RenderProps props, int flags)
           
abstract  void setCompliance(double c)
           
abstract  void setDamping(double d)
           
abstract  void setDrawIntersectionContours(boolean set)
           
abstract  void setDrawIntersectionFaces(boolean set)
           
abstract  void setDrawIntersectionPoints(boolean set)
           
abstract  void setFriction(double mu)
           
abstract  void setPenetrationTol(double tol)
           
abstract  void setRigidPointTolerance(double tol)
           
abstract  void setRigidRegionTolerance(double tol)
           
 
Methods inherited from class artisynth.core.mechmodels.ConstrainerBase
addBilateralConstraints, addFrictionConstraints, addUnilateralConstraints, advanceAuxState, getAuxState, getBilateralImpulses, getBilateralInfo, getBilateralSizes, getInitialAuxState, getUnilateralImpulses, getUnilateralInfo, getUnilateralSizes, hasState, maxFrictionConstraintSets, setAuxState, setBilateralImpulses, setUnilateralImpulses, skipAuxState, updateConstraints, zeroImpulses
 
Methods inherited from class artisynth.core.modelbase.RenderableComponentBase
copy, createRenderProps, getRenderHints, getRenderProps, getSelection, isSelectable, numSelectionQueriesNeeded, prerender, render, setRenderProps, updateBounds, updateRenderProps
 
Methods inherited from class artisynth.core.modelbase.ModelComponentBase
checkFlag, checkName, checkNameUniqueness, clearFlag, clone, connectToHierarchy, createTempFlag, disconnectFromHierarchy, getChildren, getGrandParent, getHardReferences, getName, getNameRange, getNavpanelVisibility, getNavpanelVisibility, getNumber, getParent, getProperty, getSoftReferences, hasChildren, isFixed, isMarked, isSelected, isWritable, makeValidName, makeValidName, notifyParentOfChange, postscan, printReferences, recursivelyContained, recursivelyContains, removeTempFlag, scan, setFixed, setFlag, setMarked, setName, setNavpanelVisibility, setNavpanelVisibility, setNumber, setParent, setSelected, updateReferences, write
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface maspack.render.HasRenderProps
createRenderProps, getRenderProps, setRenderProps
 
Methods inherited from interface maspack.render.GLRenderable
getRenderHints, prerender, render, updateBounds
 
Methods inherited from interface artisynth.core.modelbase.ModelComponent
connectToHierarchy, disconnectFromHierarchy, getHardReferences, getName, getNavpanelVisibility, getNumber, getParent, getSoftReferences, isFixed, isMarked, isSelected, notifyParentOfChange, postscan, scan, setFixed, setMarked, setName, setNumber, setParent, setSelected, updateReferences
 
Methods inherited from interface maspack.properties.HasProperties
getProperty
 
Methods inherited from interface maspack.properties.HierarchyNode
getChildren, hasChildren
 
Methods inherited from interface maspack.util.Scannable
isWritable, write
 

Field Detail

useSignedDistanceCollider

public static boolean useSignedDistanceCollider

doBodyFaceContact

public static boolean doBodyFaceContact

reduceConstraints

public static boolean reduceConstraints

computeTimings

public static boolean computeTimings

myProps

public static PropertyList myProps
Constructor Detail

CollisionHandler

public CollisionHandler()
Method Detail

getAllPropertyInfo

public PropertyList getAllPropertyInfo()
Description copied from interface: HasProperties
Returns a list giving static information about all properties exported by this object.

Specified by:
getAllPropertyInfo in interface HasProperties
Overrides:
getAllPropertyInfo in class ModelComponentBase
Returns:
static information for all exported properties

getCollidable

public abstract Collidable getCollidable(int idx)

getCollidable0

public abstract Collidable getCollidable0()

getCollidable1

public abstract Collidable getCollidable1()

getCompliance

public abstract double getCompliance()

setCompliance

public abstract void setCompliance(double c)

setDamping

public abstract void setDamping(double d)

getDamping

public abstract double getDamping()

getPenetrationTol

public abstract double getPenetrationTol()

setPenetrationTol

public abstract void setPenetrationTol(double tol)

getRigidPointTolerance

public abstract double getRigidPointTolerance()

setRigidPointTolerance

public abstract void setRigidPointTolerance(double tol)

getRigidRegionTolerance

public abstract double getRigidRegionTolerance()

setRigidRegionTolerance

public abstract void setRigidRegionTolerance(double tol)

setFriction

public abstract void setFriction(double mu)

getFriction

public abstract double getFriction()

autoComputeCompliance

public abstract void autoComputeCompliance(double collisionAccel,
                                           double penTol)

render

public abstract void render(GLRenderer renderer,
                            RenderProps props,
                            int flags)

hasActiveContacts

public abstract boolean hasActiveContacts()
Checks if this collision handler has any active contact constraints


setDrawIntersectionContours

public abstract void setDrawIntersectionContours(boolean set)

isDrawIntersectionContours

public abstract boolean isDrawIntersectionContours()

setDrawIntersectionFaces

public abstract void setDrawIntersectionFaces(boolean set)

isDrawIntersectionFaces

public abstract boolean isDrawIntersectionFaces()

setDrawIntersectionPoints

public abstract void setDrawIntersectionPoints(boolean set)

isDrawIntersectionPoints

public abstract boolean isDrawIntersectionPoints()