Associations:
mathTransform 1 MathTransform in association: uses parameters 0.. Parameter
Attributes: only inherited attributes
Operations: only inherited operations
4.1.26. Class Name: MathTransform
Package Class Belongs to: Stored Functions
Note: The Stored Functions package contains classes for implementation of Stored Functions. A Stored Function is an object that uses a finite set of data points or values and a interpolation
scheme to implement a function that potentially has an infinite domain. Documentation:
This service class transforms one set of coordinates to another set of coordinates using a mathematical or stored function. A MathTransform can support both transformation and
conversion without error operations. The same MathTransform can be used by multiple TransformationStep objects, using different sets of parameter values for each.
Superclass: none Stereotype: interface
Associations: user 1
TransformationStep in association: uses parameter 0..
Parameter
Attributes:
inputDimension : Integer Number of dimensions in source input coordinates.
outputDimension : Integer Number of dimensions in target output coordinates.
Operations:
initialize parameters: Sequence Parameter: void This operation initializes the Math Transformation object so it can be used correctly. The
initialize operation is often called from the object constructor to fill in appropriate attribute values based on the constructor’s parameters.
An uninitialized MathTransform will use default values for all parameters. During initialize, the MathTransform object will change the values of all parameters passed in, and all
parameters dependent on the passed parameters. Unreferenced parameters will retain their previous values which may or may not be the default, if this object was previously
initialized.
For example, if the transform is an Affine Transformation, and the parameters are the various rotations of a unit matrix, then initialize will calculate the elements of the Affine
Transformation matrix. One use of the initialize operation is to reuse a MathTransform object without reconstruction,
such as changing a single parameter to obtain the inverse MathTransform. This operation may be used in conjunction with a copy constructor when the original MathTransform object is still
needed in its current state.
transform source: Vector: Vector This operation transforms the coordinates of one point in the source coordinate reference
system to the coordinates of the same point in the target coordinate reference system. derivativeMatrix point: Vector: Matrix
This operation determines the matrix of partial derivatives of the transformation result
The Open GIS Abstract Specification Page 32
Volume 16: Image Coordinate Transformation Services 00-116.doc
coordinates with respect to the input coordinates, at the specified input position. This matrix is the multi-dimensional equivalent of a derivative or a tangent.
inverse :MathTransform This operation returns a new MathTransform object for the inverse transformation direction,
that is already initialized with the appropriate parameters. This new object has a transform operation that reverses the transform operation of this the original MathTransform object.
For example, if the original MathTransform was a Matrix multiply, the inverse transform is multiplication by the inverse of the original Matrix.
4.1.27. Class Name: Parameter