artisynth.core.mechmodels
Interface ExcitationComponent

All Superinterfaces:
HasProperties, HierarchyNode, ModelComponent, RequiresInitialize, Scannable
All Known Implementing Classes:
FemMuscleModel, FrameExciter, HydrostatModel, MFreeMuscleBundle, MFreeMuscleElementDesc, MFreeMuscleModel, MultiPointMuscle, MultiPointMuscleVia, Muscle, MuscleBundle, MuscleElementDesc, MuscleExciter, PointExciter, PointToPointMuscle, SpongeModel

public interface ExcitationComponent
extends ModelComponent, RequiresInitialize

Defines an object that can emit and recieve muscle control excitations.


Nested Class Summary
static class ExcitationComponent.CombinationRule
          Combination rules for excitations.
 
Nested classes/interfaces inherited from interface artisynth.core.modelbase.ModelComponent
ModelComponent.NavpanelVisibility
 
Method Summary
 void addExcitationSource(ExcitationComponent ex)
          Adds a new excitation source to this Excitable, with an assumed gain of 1.
 void addExcitationSource(ExcitationComponent ex, double gain)
          Adds a new excitation source to this Excitable with a specified gain.
 ExcitationComponent.CombinationRule getCombinationRule()
          Return the combination rule for excitations.
 double getDefaultActivationWeight()
          Returns the default weight that should be used when this excitation component is being used for inverse actuation control.
 double getExcitation()
          Returns the primary excitation for this component.
 double getExcitationGain(ExcitationComponent ex)
          Gets the gain for an excitation source in this component.
 double getNetExcitation()
          Returns the net excitation for this Excitable.
 boolean removeExcitationSource(ExcitationComponent ex)
          Removes an excitation source from this Excitable.
 void setCombinationRule(ExcitationComponent.CombinationRule rule)
          Sets the rule for combining excitations.
 void setExcitation(double e)
          Sets the primary excitation for this component.
 boolean setExcitationGain(ExcitationComponent ex, double gain)
          Sets the gain for an excitation source in this component.
 
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.RequiresInitialize
initialize
 

Method Detail

setCombinationRule

void setCombinationRule(ExcitationComponent.CombinationRule rule)
Sets the rule for combining excitations.

Parameters:
rule - rule for combining excitations

getCombinationRule

ExcitationComponent.CombinationRule getCombinationRule()
Return the combination rule for excitations.

Returns:
combination rule for excitations

setExcitation

void setExcitation(double e)
Sets the primary excitation for this component.

Parameters:
e - excitation value

getExcitation

double getExcitation()
Returns the primary excitation for this component.

Returns:
primary excitation value

addExcitationSource

void addExcitationSource(ExcitationComponent ex)
Adds a new excitation source to this Excitable, with an assumed gain of 1.

Parameters:
ex - excitatation source to be added

addExcitationSource

void addExcitationSource(ExcitationComponent ex,
                         double gain)
Adds a new excitation source to this Excitable with a specified gain.

Parameters:
ex - excitatation source to be added
gain - gain for the source

setExcitationGain

boolean setExcitationGain(ExcitationComponent ex,
                          double gain)
Sets the gain for an excitation source in this component.

Parameters:
ex - excitatation source whose gain is to be modified
gain - new gain for the source
Returns:
false if the source is not present in this component.

getExcitationGain

double getExcitationGain(ExcitationComponent ex)
Gets the gain for an excitation source in this component.

Parameters:
ex - excitatation source whose gain is to be queried
Returns:
source gain value, or -1 if the source is not present in this component.

removeExcitationSource

boolean removeExcitationSource(ExcitationComponent ex)
Removes an excitation source from this Excitable. Returns false if the source was not present.

Parameters:
ex - excitatation source to be removed
Returns:
true if the source was present and removed

getNetExcitation

double getNetExcitation()
Returns the net excitation for this Excitable. The net excitation is the combination of the primary excitation and the net excitations of all the excitation sources.


getDefaultActivationWeight

double getDefaultActivationWeight()
Returns the default weight that should be used when this excitation component is being used for inverse actuation control.