IRasterTransform
Description
- Derived from
- Extended by
-
RasterTransform abstract
A IRasterTransform object provides a mapping between raster coordinates and map coordinates.
Raster coordinates refer to locations in a map raster (as defined by a MapInfo) and may be two-dimensional for rectangular rasters or three-dimensional for cubemap rasters. In the rectangular case, raster coordinates are interpreted against MapInfo.Width and MapInfo.Height. In the cubemap case, raster coordinates are interpreted against MapInfo.Size.
Map coordinates are two-dimensional and refer to a geographic, a projected or a local coordinate system, as defined by CoordinateSystem.
Public / Methods
RasterFace
Returns a IRasterTransform that transforms the rectangular input raster to cubemap coordinates when applying this transform.
The output raster coordinates of MapToRaster will be transformed from cubemap coordinates to cubemap face in coordinates and the input raster coordinates of RasterToMap will be transformed from cubemap face in coordinates to cubemap coordinates after resp. before plugging them into this raster transform.
- See also
RasterOffset
Returns a IRasterTransform that translates the rectangular input raster coordinates when applying this transform.
The given coordinate offsets will be subtracted from the output raster coordinates of MapToRaster and will be added to the input raster coordinates of RasterToMap after resp. before plugging them into this raster transform.
RasterScale
Returns a IRasterTransform that scales the rectangular input raster coordinates when applying this transform.
The output raster coordinates of MapToRaster will be divided by the given scale factors and the input raster coordinates of RasterToMap will be multiplied with the scale factors after resp. before plugging them into this raster transform.
RasterSize
Scales the cubemap of this IRasterTransform so that Size returns the same value as the given size in parameter.
RasterToMap
Translates the given raster coordinates to map coordinates.
A raster transform may provide a matrix which can be used to perform an equivalent transformation, see Matrix. If that matrix represents a simple transformation (i.e. composed of scaling and translation), it may be decomposed with IRasterTransform.MatrixDecompose.
Public / Attributes
Matrix
Returns the homogeneous 2D transformation matrix that corresponds to this rectangular raster transform (i.e. the transformation performed by RasterToMap, where z
is zero).
Size
Returns whether this transform operates on a cubemap raster or a rectangular raster.
The map coordinates of a cubemap raster transform are always geographic latitude and longitude, using the angular unit of the associated coordinate system (see CoordinateSystem.GeographicUnit).
The map coordinates of a rectangular raster transform may be geographic latitude and longitude (see CoordinateSystem.IsGeographic), projected easting and northing (see CoordinateSystem.IsProjection) or local X- and Y-axis values (see CoordinateSystem.IsLocal).
- See also
Extensions
MatrixDecompose
Attempts to decompose the matrix transformation of this raster transform into scaling transformation, followed by a translation transformation.
If the raster matrix has the following form, this method will return the scaling and translation coefficients:
/ \ | Sx 0 Tx | | 0 Sy Ty | | 0 0 1 | \ / Sx := scale factor along X-axis Sy := scale factor along Y-axis Tx := translation along X-axis Ty := translation along Y-axis
- See also