artisynth.core.femmodels
Class AuxMaterialElementDescList

java.lang.Object
  extended by artisynth.core.modelbase.ModelComponentBase
      extended by artisynth.core.modelbase.ComponentList<C>
          extended by artisynth.core.modelbase.RenderableComponentList<AuxMaterialElementDesc>
              extended by artisynth.core.femmodels.AuxMaterialElementDescList
All Implemented Interfaces:
ComponentChangeListener, ComponentListView<AuxMaterialElementDesc>, CompositeComponent, IndexedComponentList, ModelComponent, MutableCompositeComponent<AuxMaterialElementDesc>, ParameterizedClass, RenderableComponent, RenderableComponentListView<AuxMaterialElementDesc>, java.lang.Cloneable, java.lang.Iterable<AuxMaterialElementDesc>, java.util.Collection<AuxMaterialElementDesc>, HasProperties, HierarchyNode, GLRenderable, GLSelectable, HasRenderProps, Renderable, ListView<AuxMaterialElementDesc>, Scannable

public class AuxMaterialElementDescList
extends RenderableComponentList<AuxMaterialElementDesc>


Nested Class Summary
 
Nested classes/interfaces inherited from interface artisynth.core.modelbase.ModelComponent
ModelComponent.NavpanelVisibility
 
Nested classes/interfaces inherited from interface artisynth.core.modelbase.CompositeComponent
CompositeComponent.NavpanelDisplay
 
Field Summary
static PropertyList myProps
           
 
Fields inherited from class artisynth.core.modelbase.ComponentList
DEFAULT_NAVPANEL_DISPLAY
 
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
AuxMaterialElementDescList()
           
AuxMaterialElementDescList(java.lang.String name, java.lang.String shortName)
           
 
Method Summary
 RenderProps createRenderProps()
          Factory method to create render properties appropriate to this object.
 void getSelection(java.util.LinkedList<java.lang.Object> list, int qid)
          Append to list the component (or components) associated with the qid-th selection query issued by this component's render method.
 boolean hasParameterizedType()
          Returns true if this class explicitly utilizes a parameterized type.
 boolean isSelectable()
          Returns true if this object is in fact selectable.
 int numSelectionQueriesNeeded()
          If this selectable manages its own selection (by issuing selection queries within its render method), then this method should return the maximum number of selection queries that will be required.
 void prerender(RenderList list)
          Prepare for rendering, and potentially add itself to a list to be drawn by a GLRenderer.
 void render(GLRenderer renderer, int flags)
          Render this object using Open GL via the JOGL.
 boolean rendersSubComponents()
          Returns true if this list automatically renders any sub-components which do not have their own render props.
 
Methods inherited from class artisynth.core.modelbase.RenderableComponentList
getAllPropertyInfo, getRenderHints, getRenderProps, setRenderProps, updateBounds
 
Methods inherited from class artisynth.core.modelbase.ComponentList
add, add, addAll, addComponents, addFixed, addNumbered, clear, clone, componentChanged, contains, contains, containsAll, copy, ensureCapacity, findComponent, get, get, getByNumber, getChildren, getNavpanelDisplay, getNumberLimit, getShortName, getTypeParameter, hasChildren, hierarchyContainsReferences, indexOf, isEmpty, iterator, nextComponentNumber, numComponents, postscan, remove, remove, removeAll, removeAll, removeComponents, retainAll, scan, setNavpanelDisplay, setNumberingStartAtOne, setShortName, size, toArray, toArray, updateNameMap
 
Methods inherited from class artisynth.core.modelbase.ModelComponentBase
checkFlag, checkName, checkNameUniqueness, clearFlag, connectToHierarchy, createTempFlag, disconnectFromHierarchy, getGrandParent, getHardReferences, getName, getNameRange, getNavpanelVisibility, getNavpanelVisibility, getNumber, getParent, getProperty, getSoftReferences, hasState, isFixed, isMarked, isSelected, isWritable, makeValidName, makeValidName, notifyParentOfChange, printReferences, recursivelyContained, recursivelyContains, removeTempFlag, 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.modelbase.ComponentListView
contains, get, get, getByNumber, getName, getShortName, indexOf, iterator, nextComponentNumber, size
 
Methods inherited from interface maspack.util.ListView
contains
 
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
getProperty
 
Methods inherited from interface maspack.properties.HierarchyNode
getChildren, hasChildren
 
Methods inherited from interface maspack.util.Scannable
isWritable, write
 
Methods inherited from interface java.util.Collection
equals, hashCode
 

Field Detail

myProps

public static PropertyList myProps
Constructor Detail

AuxMaterialElementDescList

public AuxMaterialElementDescList()

AuxMaterialElementDescList

public AuxMaterialElementDescList(java.lang.String name,
                                  java.lang.String shortName)
Method Detail

hasParameterizedType

public boolean hasParameterizedType()
Description copied from interface: ParameterizedClass
Returns true if this class explicitly utilizes a parameterized type.

Specified by:
hasParameterizedType in interface ParameterizedClass
Overrides:
hasParameterizedType in class ComponentList<AuxMaterialElementDesc>

createRenderProps

public RenderProps createRenderProps()
Description copied from interface: HasRenderProps
Factory method to create render properties appropriate to this object.

Specified by:
createRenderProps in interface RenderableComponentListView<AuxMaterialElementDesc>
Specified by:
createRenderProps in interface HasRenderProps
Overrides:
createRenderProps in class RenderableComponentList<AuxMaterialElementDesc>
Returns:
new render properties for this object

prerender

public void prerender(RenderList list)
Description copied from interface: GLRenderable
Prepare for rendering, and potentially add itself to a list to be drawn by a GLRenderer.

Specified by:
prerender in interface GLRenderable
Overrides:
prerender in class RenderableComponentList<AuxMaterialElementDesc>

rendersSubComponents

public boolean rendersSubComponents()
Description copied from class: RenderableComponentList
Returns true if this list automatically renders any sub-components which do not have their own render props.

Overrides:
rendersSubComponents in class RenderableComponentList<AuxMaterialElementDesc>

render

public void render(GLRenderer renderer,
                   int flags)
Description copied from interface: GLRenderable
Render this object using Open GL via the JOGL.

Specified by:
render in interface GLRenderable
Overrides:
render in class RenderableComponentList<AuxMaterialElementDesc>
Parameters:
renderer - renderer object which is used to perform the rendering. Provides pointers to GL and GLU, along with helper functions.
flags - supplies flags that may be used to control different aspects of the rendering. Flags are defined in GLRenderer and currently include GLRenderer.SELECTED, GLRenderer.VERTEX_COLORING, GLRenderer.HSV_COLOR_INTERPOLATION, GLRenderer.SORT_FACES, and GLRenderer.CLEAR_MESH_DISPLAY_LISTS.

isSelectable

public boolean isSelectable()
Returns true if this object is in fact selectable.

Specified by:
isSelectable in interface GLSelectable
Overrides:
isSelectable in class RenderableComponentList<AuxMaterialElementDesc>
Returns:
true if this object is selectable

numSelectionQueriesNeeded

public int numSelectionQueriesNeeded()
Description copied from interface: GLSelectable
If this selectable manages its own selection (by issuing selection queries within its render method), then this method should return the maximum number of selection queries that will be required. Otherwise, this method should return -1.

Specified by:
numSelectionQueriesNeeded in interface GLSelectable
Overrides:
numSelectionQueriesNeeded in class RenderableComponentList<AuxMaterialElementDesc>
Returns:
maximum number of selection queries needed by this component, or -1 if this component does not manage its own selection.

getSelection

public void getSelection(java.util.LinkedList<java.lang.Object> list,
                         int qid)
Description copied from interface: GLSelectable
Append to list the component (or components) associated with the qid-th selection query issued by this component's render method. This will only be called if this component manages its own selection (i.e., the number nums returned by GLSelectable.numSelectionQueriesNeeded() is positive), and qid will in turn be a number between 0 and nums-1.

Specified by:
getSelection in interface GLSelectable
Overrides:
getSelection in class RenderableComponentList<AuxMaterialElementDesc>
Parameters:
list - selected objects are appended to the end of this list
qid - index of the selection query