ptolemy.domains.gr.lib
Class Translate3D

java.lang.Object
  extended by ptolemy.kernel.util.NamedObj
      extended by ptolemy.kernel.InstantiableNamedObj
          extended by ptolemy.kernel.Entity
              extended by ptolemy.kernel.ComponentEntity
                  extended by ptolemy.actor.AtomicActor
                      extended by ptolemy.actor.TypedAtomicActor
                          extended by ptolemy.domains.gr.kernel.GRActor
                              extended by ptolemy.domains.gr.kernel.GRActor3D
                                  extended by ptolemy.domains.gr.lib.GRTransform
                                      extended by ptolemy.domains.gr.lib.Translate3D
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, Actor, Executable, FiringsRecordable, Initializable, TypedActor, Changeable, Debuggable, DebugListener, Derivable, Instantiable, ModelErrorHandler, MoMLExportable, Moveable, Nameable

public class Translate3D
extends GRTransform

Conceptually, this actor takes 3D geometry in its input and produces a translated version in its output. In reality, this actor encapsulates a Java3D TransformGroup which is converted into a node in the resulting Java3D scene graph. This actor will only have meaning in the GR domain.

Since:
Ptolemy II 1.0
Version:
$Id: Translate3D.java 57040 2010-01-27 20:52:32Z cxh $
Author:
C. Fong, Haiyang Zheng
See Also:
Serialized Form
Accepted Rating:
Red (chf)
Proposed Rating:
Red (chf)

Nested Class Summary
 
Nested classes/interfaces inherited from class ptolemy.kernel.Entity
Entity.ContainedObjectsIterator
 
Field Summary
private  double _accumulatedX
           
private  double _accumulatedY
           
private  double _accumulatedZ
           
private  double _initialXTranslation
           
private  double _initialYTranslation
           
private  double _initialZTranslation
           
protected  javax.media.j3d.TransformGroup _transformNode
          The encapsulated Java 3D node of this actor.
 Parameter initialXTranslation
          The initial translation in the x-axis This parameter should contain a DoubleToken.
 Parameter initialYTranslation
          The initial translation in the y-axis This parameter should contain a DoubleToken.
 Parameter initialZTranslation
          The initial translation in the z-axis This parameter should contain a DoubleToken.
 TypedIOPort xTranslate
          The amount of translation in the x-axis during firing.
 TypedIOPort yTranslate
          The amount of translation in the y-axis during firing.
 TypedIOPort zTranslate
          The amount of translation in the z-axis during firing.
 
Fields inherited from class ptolemy.domains.gr.lib.GRTransform
accumulate, sceneGraphIn, sceneGraphOut
 
Fields inherited from class ptolemy.domains.gr.kernel.GRActor3D
_viewScreen
 
Fields inherited from class ptolemy.domains.gr.kernel.GRActor
_allowAttributeChanges, _isSceneGraphInitialized
 
Fields inherited from class ptolemy.actor.AtomicActor
_actorFiringListeners, _initializables, _notifyingActorFiring, _stopRequested
 
Fields inherited from class ptolemy.kernel.util.NamedObj
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS
 
Fields inherited from interface ptolemy.actor.Executable
COMPLETED, NOT_READY, STOP_ITERATING
 
Constructor Summary
Translate3D(CompositeEntity container, java.lang.String name)
          Construct an actor with the given container and name.
 
Method Summary
protected  void _addChild(javax.media.j3d.Node node)
          Connect other Java3D nodes as children of the encapsulated node in this actor.
protected  javax.media.j3d.Node _getNodeObject()
          Return the encapsulated Java3D node of this 3D actor.
 void fire()
          Check the input ports for translation inputs.
 void initialize()
          Setup the initial translation.
 
Methods inherited from class ptolemy.domains.gr.lib.GRTransform
_isAccumulating, _makeSceneGraphConnection
 
Methods inherited from class ptolemy.domains.gr.kernel.GRActor3D
_setViewScreen
 
Methods inherited from class ptolemy.domains.gr.kernel.GRActor
wrapup
 
Methods inherited from class ptolemy.actor.TypedAtomicActor
_addPort, _fireAt, _fireAt, attributeTypeChanged, clone, newPort, typeConstraintList, typeConstraints
 
Methods inherited from class ptolemy.actor.AtomicActor
_actorFiring, _actorFiring, addActorFiringListener, addInitializable, clone, connectionsChanged, createReceivers, declareDelayDependency, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, isFireFunctional, isStrict, iterate, newReceiver, outputPortList, postfire, prefire, preinitialize, pruneDependencies, recordFiring, removeActorFiringListener, removeDependency, removeInitializable, setContainer, stop, stopFire, terminate
 
Methods inherited from class ptolemy.kernel.ComponentEntity
_adjustDeferrals, _checkContainer, _getContainedObject, _propagateExistence, getContainer, instantiate, isAtomic, isOpaque, moveDown, moveToFirst, moveToIndex, moveToLast, moveUp, propagateExistence, setName
 
Methods inherited from class ptolemy.kernel.Entity
_description, _exportMoMLContents, _removePort, _validateSettables, connectedPortList, connectedPorts, containedObjectsIterator, getAttribute, getPort, getPorts, linkedRelationList, linkedRelations, portList, removeAllPorts, setClassDefinition, uniqueName
 
Methods inherited from class ptolemy.kernel.InstantiableNamedObj
_setParent, exportMoML, getChildren, getElementName, getParent, getPrototypeList, isClassDefinition, isWithinClassDefinition
 
Methods inherited from class ptolemy.kernel.util.NamedObj
_addAttribute, _adjustOverride, _attachText, _cloneFixAttributeFields, _debug, _debug, _debug, _debug, _debug, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _propagateValue, _recordDecoratedAttributes, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, attributeChanged, attributeList, attributeList, deepContains, depthInHierarchy, description, description, event, executeChangeRequests, exportMoML, exportMoML, exportMoML, exportMoML, exportMoMLPlain, getAttribute, getAttributes, getChangeListeners, getClassName, getDecoratorAttribute, getDecoratorAttributes, getDerivedLevel, getDerivedList, getDisplayName, getFullName, getModelErrorHandler, getName, getName, getSource, handleModelError, isDeferringChangeRequests, isOverridden, isPersistent, lazyContainedObjectsIterator, message, propagateValue, propagateValues, removeChangeListener, removeDebugListener, requestChange, setClassName, setDeferringChangeRequests, setDerivedLevel, setDisplayName, setModelErrorHandler, setPersistent, setSource, sortContainedObjects, toplevel, toString, validateSettables, workspace
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface ptolemy.actor.Actor
createReceivers, getCausalityInterface, getDirector, getExecutiveDirector, getManager, inputPortList, newReceiver, outputPortList
 
Methods inherited from interface ptolemy.actor.Executable
isFireFunctional, isStrict, iterate, postfire, prefire, stop, stopFire, terminate
 
Methods inherited from interface ptolemy.actor.Initializable
addInitializable, preinitialize, removeInitializable
 
Methods inherited from interface ptolemy.kernel.util.Nameable
description, getContainer, getDisplayName, getFullName, getName, getName, setName
 
Methods inherited from interface ptolemy.kernel.util.Derivable
getDerivedLevel, getDerivedList, propagateValue
 

Field Detail

xTranslate

public TypedIOPort xTranslate
The amount of translation in the x-axis during firing. If this transform is in accumulate mode, the translation value is accumulated for each firing.


yTranslate

public TypedIOPort yTranslate
The amount of translation in the y-axis during firing. If this transform is in accumulate mode, the translation value is accumulated for each firing.


zTranslate

public TypedIOPort zTranslate
The amount of translation in the z-axis during firing. If this transform is in accumulate mode, the translation value is accumulated for each firing.


initialXTranslation

public Parameter initialXTranslation
The initial translation in the x-axis This parameter should contain a DoubleToken. The default value of this parameter is 0.0.


initialYTranslation

public Parameter initialYTranslation
The initial translation in the y-axis This parameter should contain a DoubleToken. The default value of this parameter is 0.0.


initialZTranslation

public Parameter initialZTranslation
The initial translation in the z-axis This parameter should contain a DoubleToken. The default value of this parameter is 0.0.


_transformNode

protected javax.media.j3d.TransformGroup _transformNode
The encapsulated Java 3D node of this actor.


_initialXTranslation

private double _initialXTranslation

_initialYTranslation

private double _initialYTranslation

_initialZTranslation

private double _initialZTranslation

_accumulatedX

private double _accumulatedX

_accumulatedY

private double _accumulatedY

_accumulatedZ

private double _accumulatedZ
Constructor Detail

Translate3D

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

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

fire

public void fire()
          throws IllegalActionException
Check the input ports for translation inputs. Convert the translation tokens into a Java3D transformation.

Specified by:
fire in interface Executable
Overrides:
fire in class GRActor
Throws:
IllegalActionException - If the value of some parameters can't be obtained

initialize

public void initialize()
                throws IllegalActionException
Setup the initial translation.

Specified by:
initialize in interface Initializable
Overrides:
initialize in class GRTransform
Throws:
IllegalActionException - If the value of some parameters can't be obtained

_addChild

protected void _addChild(javax.media.j3d.Node node)
Connect other Java3D nodes as children of the encapsulated node in this actor.

Overrides:
_addChild in class GRActor3D
Parameters:
node - The child Java3D node.

_getNodeObject

protected javax.media.j3d.Node _getNodeObject()
Return the encapsulated Java3D node of this 3D actor. The encapsulated node for this actor TransformGroup.

Specified by:
_getNodeObject in class GRActor3D
Returns:
the Java3D TransformGroup