artisynth.core.mechmodels
Class ParticleConstraint

java.lang.Object
  extended by artisynth.core.modelbase.ModelComponentBase
      extended by artisynth.core.modelbase.RenderableComponentBase
          extended by artisynth.core.mechmodels.ParticleConstraint
All Implemented Interfaces:
ModelComponent, RenderableComponent, ScalableUnits, TransformableGeometry, java.lang.Cloneable, HasProperties, HierarchyNode, GLRenderable, GLSelectable, HasRenderProps, Renderable, Scannable

public abstract class ParticleConstraint
extends RenderableComponentBase
implements ScalableUnits, TransformableGeometry


Nested Class Summary
 
Nested classes/interfaces inherited from interface artisynth.core.modelbase.ModelComponent
ModelComponent.NavpanelVisibility
 
Field Summary
 
Fields inherited from class artisynth.core.modelbase.ModelComponentBase
enforceUniqueCompositeNames, enforceUniqueNames, myNumber, myProps, NULL_OBJ, useCompactPathNames
 
Fields inherited from interface artisynth.core.util.TransformableGeometry
ARTICULATED, SIMULATING
 
Fields inherited from interface maspack.render.GLRenderable
TRANSLUCENT, TWO_DIMENSIONAL
 
Constructor Summary
ParticleConstraint()
           
 
Method Summary
abstract  int addBilateralConstraints(SparseBlockMatrix GT, VectorNd dg, int numb, double t)
           
abstract  int addUnilateralConstraints(SparseBlockMatrix NT, VectorNd dn, int numu, double t)
           
abstract  int getBilateralInfo(MechSystem.ConstraintInfo[] ginfo, int idx)
           
abstract  void getBilateralSizes(VectorNi sizes)
           
abstract  int getState(VectorNd x, int idx)
           
abstract  int getStateSize()
           
abstract  int getUnilateralInfo(MechSystem.ConstraintInfo[] ninfo, int idx)
           
abstract  void getUnilateralSizes(VectorNi sizes)
           
 void projectFrictionConstraints()
           
abstract  void projectPosConstraints(double t)
           
abstract  int setBilateralImpulses(VectorNd lam, int idx)
           
abstract  int setState(VectorNd x, int idx)
           
abstract  int setUnilateralImpulses(VectorNd the, int idx)
           
abstract  void 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, getAllPropertyInfo, getChildren, getGrandParent, getHardReferences, getName, getNameRange, getNavpanelVisibility, getNavpanelVisibility, getNumber, getParent, getProperty, getSoftReferences, hasChildren, hasState, 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 artisynth.core.util.ScalableUnits
scaleDistance, scaleMass
 
Methods inherited from interface artisynth.core.util.TransformableGeometry
transformGeometry, transformGeometry
 
Methods inherited from interface artisynth.core.modelbase.ModelComponent
connectToHierarchy, disconnectFromHierarchy, getHardReferences, getName, getNavpanelVisibility, getNumber, getParent, getSoftReferences, hasState, isFixed, isMarked, isSelected, notifyParentOfChange, postscan, scan, setFixed, setMarked, setName, setNumber, setParent, setSelected, updateReferences
 
Methods inherited from interface maspack.properties.HasProperties
getAllPropertyInfo, getProperty
 
Methods inherited from interface maspack.properties.HierarchyNode
getChildren, hasChildren
 
Methods inherited from interface maspack.util.Scannable
isWritable, write
 

Constructor Detail

ParticleConstraint

public ParticleConstraint()
Method Detail

getBilateralSizes

public abstract void getBilateralSizes(VectorNi sizes)

addBilateralConstraints

public abstract int addBilateralConstraints(SparseBlockMatrix GT,
                                            VectorNd dg,
                                            int numb,
                                            double t)

getBilateralInfo

public abstract int getBilateralInfo(MechSystem.ConstraintInfo[] ginfo,
                                     int idx)

setBilateralImpulses

public abstract int setBilateralImpulses(VectorNd lam,
                                         int idx)

zeroImpulses

public abstract void zeroImpulses()

getUnilateralSizes

public abstract void getUnilateralSizes(VectorNi sizes)

addUnilateralConstraints

public abstract int addUnilateralConstraints(SparseBlockMatrix NT,
                                             VectorNd dn,
                                             int numu,
                                             double t)

getUnilateralInfo

public abstract int getUnilateralInfo(MechSystem.ConstraintInfo[] ninfo,
                                      int idx)

setUnilateralImpulses

public abstract int setUnilateralImpulses(VectorNd the,
                                          int idx)

projectPosConstraints

public abstract void projectPosConstraints(double t)

projectFrictionConstraints

public void projectFrictionConstraints()

getStateSize

public abstract int getStateSize()

getState

public abstract int getState(VectorNd x,
                             int idx)

setState

public abstract int setState(VectorNd x,
                             int idx)