Package org.geotools.geometry
Class PixelTranslation
- Object
-
- PixelTranslation
-
- All Implemented Interfaces:
Serializable
public final class PixelTranslation extends Object implements Serializable
The translation to apply for different values ofPixelOrientation
.- Since:
- 2.5
- Author:
- Martin Desruisseaux (IRD)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description double
dx
The translation among the x axis relative to pixel center.double
dy
The translation among the y axis relative to pixel center.PixelOrientation
orientation
The pixel orientation for this translation.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static PixelOrientation
getPixelOrientation(double dx, double dy)
Returns the pixel orientation for the given offset, ornull
if none.static PixelOrientation
getPixelOrientation(PixelInCell anchor)
Returns the pixel orientation for the givenPixelInCell
code.static PixelTranslation
getPixelTranslation(PixelOrientation anchor)
Returns the specified position relative to the pixel center.static double
getPixelTranslation(PixelInCell anchor)
Returns the position relative to the pixel center.String
toString()
Returns a string representation of this pixel translation.static MathTransform
translate(MathTransform gridToCRS, PixelOrientation current, PixelOrientation expected, int xDimension, int yDimension)
Translates the specified math transform according the specified pixel orientations.static MathTransform
translate(MathTransform gridToCRS, PixelInCell current, PixelInCell expected)
Translates the specified math transform according the specified pixel orientations.
-
-
-
Field Detail
-
orientation
public final PixelOrientation orientation
The pixel orientation for this translation.
-
dx
public final double dx
The translation among the x axis relative to pixel center. The value is typically in the [-0.5 .. +0.5] range.
-
dy
public final double dy
The translation among the y axis relative to pixel center. The value is typically in the [-0.5 .. +0.5] range.
-
-
Method Detail
-
getPixelOrientation
public static PixelOrientation getPixelOrientation(PixelInCell anchor) throws IllegalArgumentException
Returns the pixel orientation for the givenPixelInCell
code.- Parameters:
anchor
- ThePixelInCell
code, ornull
.- Returns:
- The corresponding pixel orientation, or
null
if the argument was null. - Throws:
IllegalArgumentException
- if the given code is unknown.
-
getPixelTranslation
public static double getPixelTranslation(PixelInCell anchor)
Returns the position relative to the pixel center. This method returns a value from the following table:Pixel in cell offset CELL_CENTER
0.0 CELL_CORNER
-0.5 This method is typically used for n-dimensional grids, where the number of dimension is unknown.
- Parameters:
anchor
- The "pixel in cell" value.- Returns:
- The translation for the given "pixel in cell" value.
-
getPixelTranslation
public static PixelTranslation getPixelTranslation(PixelOrientation anchor) throws IllegalArgumentException
Returns the specified position relative to the pixel center. This method returns a value from the following table:Pixel orientation x y CENTER
0.0 0.0 UPPER_LEFT
-0.5 -0.5 UPPER_RIGHT
+0.5 -0.5 LOWER_LEFT
-0.5 +0.5 LOWER_RIGHT
+0.5 +0.5 This method can be used for grid restricted to 2 dimensions.
- Parameters:
anchor
- The pixel orientation.- Returns:
- The position relative to the pixel center.
- Throws:
IllegalArgumentException
- if the specified orientation is unknown.
-
getPixelOrientation
public static PixelOrientation getPixelOrientation(double dx, double dy)
Returns the pixel orientation for the given offset, ornull
if none. This is the reverse ofgetPixelTranslation(PixelOrientation)
.- Parameters:
dx
- The translation along x axis.dy
- The translation along y axis.- Returns:
- The pixel orientation of the given values, or
null
if none.
-
translate
public static MathTransform translate(MathTransform gridToCRS, PixelInCell current, PixelInCell expected)
Translates the specified math transform according the specified pixel orientations.- Parameters:
gridToCRS
- A math transform from pixel coordinates to any CRS.current
- The pixel orientation of the givengridToCRS
transform.expected
- The pixel orientation of the desired transform.- Returns:
- The translation from
current
toexpected
.
-
translate
public static MathTransform translate(MathTransform gridToCRS, PixelOrientation current, PixelOrientation expected, int xDimension, int yDimension)
Translates the specified math transform according the specified pixel orientations.- Parameters:
gridToCRS
- A math transform from pixel coordinates to any CRS.current
- The pixel orientation of the givengridToCRS
transform.expected
- The pixel orientation of the desired transform.xDimension
- The dimension of x coordinates (pixel columns). Often 0.yDimension
- The dimension of y coordinates (pixel rows). Often 1.- Returns:
- The translation from
current
toexpected
.
-
-