artisynth.core.mechmodels
Interface MotionTargetComponent

All Superinterfaces:
DynamicMechComponent, ForceEffector, HasProperties, HierarchyNode, ModelComponent, Scannable
All Known Implementing Classes:
BeamBody, DeformableBody, Elaston, FemMarker, FemNode, FemNode3d, Frame, FrameMarker, Marker, MFreeHermiteNode3d, MFreeNode3d, Particle, PlanarPoint, Point, RigidBody, RigidCompositeBody, TargetFrame, TargetPoint

public interface MotionTargetComponent
extends DynamicMechComponent

Indicates a dynamic component for which motion targets can be set.


Nested Class Summary
 
Nested classes/interfaces inherited from interface artisynth.core.modelbase.ModelComponent
ModelComponent.NavpanelVisibility
 
Method Summary
 int addTargetJacobian(SparseBlockMatrix J, int bi)
          Add a row to the motion target Jacobian for this motion target.
 int getPosStateSize()
           
 MotionTarget.TargetActivity getTargetActivity()
           
 int getTargetPos(double[] post, double s, double h, int idx)
           
 int getTargetVel(double[] velt, double s, double h, int idx)
           
 int getVelStateSize()
           
 void resetTargets()
           
 void setTargetActivity(MotionTarget.TargetActivity interp)
           
 int setTargetPos(double[] post, int idx)
           
 int setTargetVel(double[] velt, int idx)
           
 
Methods inherited from interface artisynth.core.mechmodels.DynamicMechComponent
addMasterAttachment, addPosImpulse, addSolveBlock, applyGravity, checkFlag, clearFlag, createMassBlock, createSolveBlock, getAttachment, getForce, getInverseMass, getMass, getMass, getMassForces, getMasterAttachments, getPosDerivative, getPosState, getSolveIndex, getVelState, isActive, isAttached, isControllable, isDynamic, isMassConstant, isParametric, removeMasterAttachment, setAttached, setFlag, setForce, setForcesToExternal, setPosState, setSolveIndex, setState, setVelState, velocityLimitExceeded, zeroExternalForces, zeroForces
 
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
 
Methods inherited from interface artisynth.core.mechmodels.ForceEffector
addPosJacobian, addSolveBlocks, addVelJacobian, applyForces, getJacobianType
 

Method Detail

getTargetActivity

MotionTarget.TargetActivity getTargetActivity()

setTargetActivity

void setTargetActivity(MotionTarget.TargetActivity interp)

getVelStateSize

int getVelStateSize()
Specified by:
getVelStateSize in interface DynamicMechComponent

getTargetVel

int getTargetVel(double[] velt,
                 double s,
                 double h,
                 int idx)

setTargetVel

int setTargetVel(double[] velt,
                 int idx)

getPosStateSize

int getPosStateSize()
Specified by:
getPosStateSize in interface DynamicMechComponent

getTargetPos

int getTargetPos(double[] post,
                 double s,
                 double h,
                 int idx)

setTargetPos

int setTargetPos(double[] post,
                 int idx)

addTargetJacobian

int addTargetJacobian(SparseBlockMatrix J,
                      int bi)
Add a row to the motion target Jacobian for this motion target. The Jacobian maps state velocities u into motion target velocities vt according to
 vt = J u
 

Parameters:
J - motion target Jacobian
bi - block row index for the row to be added
Returns:
bi + 1

resetTargets

void resetTargets()