Package org.apache.sis.referencing.operation.transform


package org.apache.sis.referencing.operation.transform
Conversions or transformations of multi-dimensional coordinate tuples. MathTransform provides a single API for coordinate conversions or transformations, including map projections. Each MathTransform instances can:
  • transform a single point,
  • transform efficiently an array of coordinates,
  • transform a Java2D Shape (MathTransform2D only),
  • compute the transform derivative at a location (for advanced users),
  • be concatenated in a conversion or transformation chain.
MathTransform are truly n-dimensional, but specialized implementations for 1D and 2D cases are provided for performance reasons or for inter-operability with Java2D. In the 2D case, Apache SIS provides instances of the standard AffineTransform class when possible.

This package does not include map projections, which are a special kind of transforms defined in their own projection package.

Creating math transforms

MathTransform instances can be created either directly or indirectly. The recommended way is the indirect one: first find the coordinate operation (generally from a pair of source and target CRS), then invoke CoordinateOperation.getMathTransform(). However, sophisticated users can also create math transforms explicitly from a group of parameter values using the math transform factory.

Non-spatial coordinates

MathTransform usually performs conversions or transformations from points given in a source coordinate reference system to coordinate values for the same points in the target coordinate reference system. However, the conversions are not necessarily between CRS; a MathTransform can also be used for converting the sample values in a raster for example. Such kind of transforms are named transfer functions.
Since:
0.5
Version:
1.3