VisualSim.simulators.gr.lib
Class GRShape2D

java.lang.Object
  extended byVisualSim.kernel.util.NamedObj
      extended byVisualSim.kernel.InstantiableNamedObj
          extended byVisualSim.kernel.Entity
              extended byVisualSim.kernel.ComponentEntity
                  extended byVisualSim.actor.AtomicActor
                      extended byVisualSim.actor.TypedAtomicActor
                          extended byVisualSim.simulators.gr.kernel.GRActor
                              extended byVisualSim.simulators.gr.kernel.GRActor2D
                                  extended byVisualSim.simulators.gr.lib.GRShape2D
All Implemented Interfaces:
VisualSim.actor.Actor, VisualSim.kernel.util.Changeable, java.lang.Cloneable, VisualSim.kernel.util.Debuggable, VisualSim.kernel.util.DebugListener, VisualSim.kernel.util.Derivable, VisualSim.actor.Executable, VisualSim.kernel.util.Instantiable, VisualSim.kernel.util.ModelErrorHandler, VisualSim.kernel.util.MoMLExportable, VisualSim.kernel.util.Moveable, VisualSim.kernel.util.Nameable, java.io.Serializable, VisualSim.actor.TypedActor
Direct Known Subclasses:
Box2D, RectangularFigure2D

public abstract class GRShape2D
extends VisualSim.simulators.gr.kernel.GRActor2D

An abstract base class for two-dimensional GR Actors representing figures. The color of the figure is chosen from a color chooser dialog, or can be entered manually as an array of double values of the form {red, green, blue, alpha}.

Since:
VisualSim4.0
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class VisualSim.kernel.Entity
VisualSim.kernel.Entity.ContainedObjectsIterator
 
Field Summary
protected  diva.canvas.toolbox.BasicFigure _figure
           
 VisualSim.data.expr.Parameter outlineWidth
          The width of the figure's outline.
 VisualSim.actor.gui.ColorAttribute rgbFillColor
          The red, green, blue, and alpha components of the interior color of the figure.
 VisualSim.actor.gui.ColorAttribute rgbOutlineColor
          The red, green, blue and alpha components of the outline color of the figure.
 VisualSim.actor.TypedIOPort sceneGraphOut
          The output port for connecting to other GR Actors in the scene graph
 
Fields inherited from class VisualSim.simulators.gr.kernel.GRActor2D
_viewScreen
 
Fields inherited from class VisualSim.simulators.gr.kernel.GRActor
_allowAttributeChanges, _isSceneGraphInitialized
 
Fields inherited from class VisualSim.actor.AtomicActor
_stopRequested, Block_Documentation
 
Fields inherited from class VisualSim.kernel.util.NamedObj
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
 
Fields inherited from interface VisualSim.actor.Executable
COMPLETED, NOT_READY, STOP_ITERATING
 
Constructor Summary
GRShape2D(VisualSim.kernel.CompositeEntity container, java.lang.String name)
          Construct an actor with the given container and name.
 
Method Summary
protected abstract  diva.canvas.toolbox.BasicFigure _createFigure()
          Create the figure for this actor.
protected  void _makeSceneGraphConnection()
          Setup the scene graph connections of this actor.
 void attributeChanged(VisualSim.kernel.util.Attribute attribute)
          Update the position and location of the figure on the screen when the user changes the parameters.
 diva.canvas.toolbox.BasicFigure getFigure()
           
 void initialize()
          Create the figure for this actor.
 boolean prefire()
          Return false if the scene graph is already initialized.
 
Methods inherited from class VisualSim.simulators.gr.kernel.GRActor2D
_setViewScreen
 
Methods inherited from class VisualSim.simulators.gr.kernel.GRActor
fire, wrapup
 
Methods inherited from class VisualSim.actor.TypedAtomicActor
_addPort, attributeTypeChanged, clone, newPort, typeConstraintList
 
Methods inherited from class VisualSim.actor.AtomicActor
_createReceivers, clone, connectionsChanged, getDirector, getExecutiveDirector, getFunctionDependency, getManager, inputPortList, iterate, newReceiver, outputPortList, postfire, preinitialize, pruneDependencies, removeDependency, setContainer, stop, stopFire, terminate
 
Methods inherited from class VisualSim.kernel.ComponentEntity
_adjustDeferrals, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, isAtomic, isOpaque, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName
 
Methods inherited from class VisualSim.kernel.Entity
_description, _exportMoMLContents, _removePort, connectedPortList, connectedPorts, containedObjectsIterator, getAttribute, getPort, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts, setClassDefinition, uniqueName, validateSettables
 
Methods inherited from class VisualSim.kernel.InstantiableNamedObj
_setParent, exportMoML, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition
 
Methods inherited from class VisualSim.kernel.util.NamedObj
_addAttribute, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, attributeList, attributeList, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, getAttribute, getAttributes, getChangeListeners, getClassName, getDerivedLevel, getDerivedList, getFullName, getModelErrorHandler, getName, getName, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, message, propagateValue, propagateValues, removeChangeListener, removeDebugListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setModelErrorHandler, setNormalDebugging, setPersistent, setSource, setVerboseDebugging, sortContainedObjects, toplevel, toString, workspace
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface VisualSim.actor.Actor
getDirector, getExecutiveDirector, getFunctionDependency, getManager, inputPortList, newReceiver, outputPortList
 
Methods inherited from interface VisualSim.actor.Executable
iterate, postfire, preinitialize, stop, stopFire, terminate
 
Methods inherited from interface VisualSim.kernel.util.Nameable
description, getContainer, getFullName, getName, getName, setName
 
Methods inherited from interface VisualSim.kernel.util.Derivable
getDerivedLevel, getDerivedList, propagateValue
 

Field Detail

sceneGraphOut

public VisualSim.actor.TypedIOPort sceneGraphOut
The output port for connecting to other GR Actors in the scene graph


rgbFillColor

public VisualSim.actor.gui.ColorAttribute rgbFillColor
The red, green, blue, and alpha components of the interior color of the figure. This parameter must contain an array of double values. The default value is {1.0, 1.0, 1.0, 1.0}, corresponding to opaque white.


rgbOutlineColor

public VisualSim.actor.gui.ColorAttribute rgbOutlineColor
The red, green, blue and alpha components of the outline color of the figure. This parameter must contain an array of double values. The default value is {0.0, 0.0, 0.0, 1.0}, corresponding to opaque black.


outlineWidth

public VisualSim.data.expr.Parameter outlineWidth
The width of the figure's outline. This parameter must contain a DoubleToken. The default value is 1.0.


_figure

protected diva.canvas.toolbox.BasicFigure _figure
Constructor Detail

GRShape2D

public GRShape2D(VisualSim.kernel.CompositeEntity container,
                 java.lang.String name)
          throws VisualSim.kernel.util.IllegalActionException,
                 VisualSim.kernel.util.NameDuplicationException
Construct an actor with the given container and name.

Parameters:
container - The container.
name - The name of this actor.
Throws:
VisualSim.kernel.util.IllegalActionException - If the actor cannot be contained by the proposed container.
VisualSim.kernel.util.NameDuplicationException - If the container already has an actor with this name.
Method Detail

attributeChanged

public void attributeChanged(VisualSim.kernel.util.Attribute attribute)
                      throws VisualSim.kernel.util.IllegalActionException
Update the position and location of the figure on the screen when the user changes the parameters.

Parameters:
attribute - The attribute which changed.
Throws:
VisualSim.kernel.util.IllegalActionException

getFigure

public diva.canvas.toolbox.BasicFigure getFigure()

initialize

public void initialize()
                throws VisualSim.kernel.util.IllegalActionException
Create the figure for this actor.

Throws:
VisualSim.kernel.util.IllegalActionException - If the current director is not a GRDirector.

prefire

public boolean prefire()
                throws VisualSim.kernel.util.IllegalActionException
Return false if the scene graph is already initialized.

Returns:
false if the scene graph is already initialized.
Throws:
VisualSim.kernel.util.IllegalActionException - Not thrown in this base class

_createFigure

protected abstract diva.canvas.toolbox.BasicFigure _createFigure()
                                                          throws VisualSim.kernel.util.IllegalActionException
Create the figure for this actor. Derived classes should implement this method to create the correct figure.

Throws:
VisualSim.kernel.util.IllegalActionException - If a parameter is not valid.

_makeSceneGraphConnection

protected void _makeSceneGraphConnection()
                                  throws VisualSim.kernel.util.IllegalActionException
Setup the scene graph connections of this actor.

Throws:
VisualSim.kernel.util.IllegalActionException - Always thrown for this base class.