Package ptolemy.domains.gr.lib
Class Rotate3D
- java.lang.Object
-
- All Implemented Interfaces:
java.lang.Cloneable
,Actor
,Executable
,FiringsRecordable
,Initializable
,TypedActor
,Changeable
,Debuggable
,DebugListener
,Derivable
,Instantiable
,ModelErrorHandler
,MoMLExportable
,Moveable
,Nameable
public class Rotate3D extends GRTransform
Conceptually, this actor takes 3D geometry in its input and produces a rotated 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. The parameters axisDirectionX,axisDirectionY, and axisDirectionZ determine the direction of the axis of rotation. The parameters baseX, baseY, and baseZ determine the pivot point for axis of the rotation. The parameter initialAngle determines the initial angle of rotation.- Since:
- Ptolemy II 1.0
- Version:
- $Id$
- Author:
- C. Fong
- Pt.AcceptedRating:
- Red (chf)
- Pt.ProposedRating:
- Red (chf)
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class ptolemy.kernel.Entity
Entity.ContainedObjectsIterator
-
-
Field Summary
Fields Modifier and Type Field Description TypedIOPort
angle
The amount of rotation during firing.Parameter
axisDirection
The direction of the axis of rotation.Parameter
initialAngle
The initial angle of rotation.PortParameter
pivotLocation
The pivot location of the axis of rotation.-
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.TypedAtomicActor
_typesValid
-
Fields inherited from class ptolemy.actor.AtomicActor
_actorFiringListeners, _initializables, _notifyingActorFiring, _stopRequested
-
Fields inherited from class ptolemy.kernel.util.NamedObj
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _deferChangeRequests, _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
Constructors Constructor Description Rotate3D(CompositeEntity container, java.lang.String name)
Construct an actor with the given container and name.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description 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()
Change the rotation angle depending on the value given in the input port.void
initialize()
Setup the initial rotation.-
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.actor.TypedAtomicActor
_containedTypeConstraints, _customTypeConstraints, _defaultTypeConstraints, _fireAt, _fireAt, attributeTypeChanged, clone, clone, isBackwardTypeInferenceEnabled, newPort, typeConstraintList, typeConstraints
-
Methods inherited from class ptolemy.actor.AtomicActor
_actorFiring, _actorFiring, _declareDelayDependency, addActorFiringListener, addInitializable, 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
_addPort, _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, _containedDecorators, _copyChangeRequestList, _debug, _debug, _debug, _debug, _debug, _executeChangeRequests, _getIndentPrefix, _isMoMLSuppressed, _markContentsDerived, _notifyHierarchyListenersAfterChange, _notifyHierarchyListenersBeforeChange, _propagateValue, _removeAttribute, _splitName, _stripNumericSuffix, addChangeListener, addDebugListener, addHierarchyListener, attributeChanged, attributeDeleted, attributeList, attributeList, decorators, 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, notifyOfNameChange, propagateValue, propagateValues, removeAttribute, removeChangeListener, removeDebugListener, removeHierarchyListener, 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.kernel.util.Derivable
getDerivedLevel, getDerivedList, propagateValue
-
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
-
-
-
-
Field Detail
-
angle
public TypedIOPort angle
The amount of rotation during firing. If this transform is in accumulate mode, the angle value is accumulated for each firing.
-
initialAngle
public Parameter initialAngle
The initial angle of rotation. This parameter should contain a DoubleToken. The default value of this parameter is 0.0.
-
axisDirection
public Parameter axisDirection
The direction of the axis of rotation. The parameter should contain a DoubleMatrixToken The default value of this parameter is [0.0, 1.0, 0.0]
-
pivotLocation
public PortParameter pivotLocation
The pivot location of the axis of rotation. This parameter should contain a DoubleMatrixToken The default value of this parameter is [0.0, 0.0, 0.0]
-
-
Constructor Detail
-
Rotate3D
public Rotate3D(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
-
_addChild
protected void _addChild(javax.media.j3d.Node node)
Connect other Java3D nodes as children of the encapsulated node in this actor.
-
fire
public void fire() throws IllegalActionException
Change the rotation angle depending on the value given in the input port.- Specified by:
fire
in interfaceExecutable
- Overrides:
fire
in classGRActor
- Throws:
IllegalActionException
- If the value of some parameters can't be obtained.
-
_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 classGRActor3D
- Returns:
- the Java3D TransformGroup
-
initialize
public void initialize() throws IllegalActionException
Setup the initial rotation.- Specified by:
initialize
in interfaceInitializable
- Overrides:
initialize
in classGRTransform
- Throws:
IllegalActionException
- If the value of some parameters can't be obtained
-
-