ptolemy.actor.lib.jai
Class JAIAffineTransform
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.Transformer
ptolemy.actor.lib.jai.JAIAffineTransform
- 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 JAIAffineTransform
- extends Transformer
Compute an affine transformation on an image. The parameter
affineMatrix must be a two by three matrix. If the matrix is
a b c
d e f
the input (x', y') and output (x, y) is determined by the following two
equations.
x = a*x' + b*y' + c;
y = d*x' + e*y' + f;
Note that the c and f terms do not show up when the output is directly
displayed. The c and f terms are translation terms, and only show up
when operated on with another image.
- Since:
- Ptolemy II 3.0
- Version:
- $Id: JAIAffineTransform.java 57040 2010-01-27 20:52:32Z cxh $
- Author:
- James Yeh
- See Also:
- Serialized Form
- Accepted Rating:
- Proposed Rating:
Fields inherited from class ptolemy.kernel.util.NamedObj |
_changeListeners, _changeLock, _changeRequests, _debugging, _debugListeners, _elementName, _isPersistent, _verbose, _workspace, ATTRIBUTES, CLASSNAME, COMPLETE, CONTENTS, DEEP, FULLNAME, LINKS |
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, prefire, 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, 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 |
affineMatrix
public Parameter affineMatrix
- The affine transformation matrix. This is a doubleMatrixToken
valued parameter that defaults to
1 0 0
0 1 0
interpolationType
public StringAttribute interpolationType
- The type of interpolation to use. This is a string valued
attribute that defaults to type "bilinear"
subSampleBits
public Parameter subSampleBits
- The subsample precision. The default value of this parameter
is the integer value 8.
_affineTransform
private java.awt.geom.AffineTransform _affineTransform
_initialMatrix
private double[][] _initialMatrix
_interpolation
private javax.media.jai.Interpolation _interpolation
_interpolationType
private int _interpolationType
- An indicator for the type of interpolation to use
_matrixValue
private double[][] _matrixValue
_subSampleBits
private int _subSampleBits
- The subsample precision
_BICUBIC
private static final int _BICUBIC
- See Also:
- Constant Field Values
_BICUBIC2
private static final int _BICUBIC2
- See Also:
- Constant Field Values
_BILINEAR
private static final int _BILINEAR
- See Also:
- Constant Field Values
_NEARESTNEIGHBOR
private static final int _NEARESTNEIGHBOR
- See Also:
- Constant Field Values
JAIAffineTransform
public JAIAffineTransform(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.
attributeChanged
public void attributeChanged(Attribute attribute)
throws IllegalActionException
- Override the base class and set the factors.
- Overrides:
attributeChanged
in class NamedObj
- Parameters:
attribute
- The attribute that changed.
- Throws:
IllegalActionException
- If the function is not recognized.
fire
public void fire()
throws IllegalActionException
- Fire this actor.
Output the affine transformed RenderedOp.
- Specified by:
fire
in interface Executable
- Overrides:
fire
in class AtomicActor
- Throws:
IllegalActionException
- If a contained method throws it,
or if a token is received that contains a null image.