ptolemy.actor.lib.conversions
Class PolarToCartesian
java.lang.Object
ptolemy.kernel.util.NamedObj
ptolemy.kernel.InstantiableNamedObj
ptolemy.kernel.Entity
ptolemy.kernel.ComponentEntity
ptolemy.actor.AtomicActor
ptolemy.actor.TypedAtomicActor
ptolemy.actor.lib.conversions.PolarToCartesian
- 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 PolarToCartesian
- extends TypedAtomicActor
This actor reads two double tokens (magnitude and angle) and outputs
two new double tokens (x and y). The outputs are a Cartesian representation
of the pair given at the inputs in polar form, where
x = magnitude * cos(angle) and y = magnitude * sin(angle).
Note that the angle input is assumed to be in radians. If either input
is NaN or infinity, then the outputs are NaN or infinity.
- Since:
- Ptolemy II 1.0
- Version:
- $Id: PolarToCartesian.java 57040 2010-01-27 20:52:32Z cxh $
- Author:
- Michael Leung, Edward A. Lee, Paul Whitaker
- See Also:
- Serialized Form
- Accepted Rating:
- Proposed Rating:
Field Summary |
TypedIOPort |
angle
The input port for the angle component (in radians), which has type
DoubleToken. |
TypedIOPort |
magnitude
The input port for the magnitude component, which has type
DoubleToken. |
TypedIOPort |
x
The output port for the x coordinate, which has type DoubleToken. |
TypedIOPort |
y
The output port for the y coordinate, which has type DoubleToken. |
Fields inherited from class ptolemy.kernel.util.NamedObj |
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS |
Method Summary |
void |
fire()
Consume a double token from each of the two input ports (magnitude
and angle) and output a double token on each of the two output ports
(x and y). |
boolean |
prefire()
Return false if either of the input ports has no token, otherwise
return what the superclass returns (presumably true). |
Methods inherited from class ptolemy.actor.AtomicActor |
_actorFiring, _actorFiring, addActorFiringListener, addInitializable, clone, connectionsChanged, createReceivers, declareDelayDependency, getCausalityInterface, getDirector, getExecutiveDirector, getManager, initialize, inputPortList, isFireFunctional, isStrict, iterate, newReceiver, outputPortList, postfire, preinitialize, pruneDependencies, recordFiring, removeActorFiringListener, removeDependency, removeInitializable, setContainer, stop, stopFire, terminate, wrapup |
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.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 |
magnitude
public TypedIOPort magnitude
- The input port for the magnitude component, which has type
DoubleToken.
angle
public TypedIOPort angle
- The input port for the angle component (in radians), which has type
DoubleToken.
x
public TypedIOPort x
- The output port for the x coordinate, which has type DoubleToken.
y
public TypedIOPort y
- The output port for the y coordinate, which has type DoubleToken.
PolarToCartesian
public PolarToCartesian(CompositeEntity container,
java.lang.String name)
throws NameDuplicationException,
IllegalActionException
- 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.
fire
public void fire()
throws IllegalActionException
- Consume a double token from each of the two input ports (magnitude
and angle) and output a double token on each of the two output ports
(x and y). The output is a Cartesian representation of the coordinates
given at the inputs in polar form. The angle is in radians.
- Specified by:
fire
in interface Executable
- Overrides:
fire
in class AtomicActor
- Throws:
IllegalActionException
- If there is no director.
prefire
public boolean prefire()
throws IllegalActionException
- Return false if either of the input ports has no token, otherwise
return what the superclass returns (presumably true).
- Specified by:
prefire
in interface Executable
- Overrides:
prefire
in class AtomicActor
- Returns:
- True if this actor is ready for firing, false otherwise.
- Throws:
IllegalActionException
- If there is no director.