Class RotatedPole
- Object
-
- Formattable
-
- AbstractMathTransform
-
- MapProjection
-
- RotatedPole
-
- All Implemented Interfaces:
Serializable,MathTransform,MathTransform2D
public class RotatedPole extends MapProjection
Rotated Pole Transformation for rotated spherical coordinates ("Rotated Pole Coordinates"), commonly used in numerical weather forecasting models.Key parameters:
latitudeOfOrigin,centralMeridian- latitude/longitude of the rotated origin.Based on the code provided by Jürgen Seib (Deutscher Wetterdienst), adopted to follow "+proj=ob_tran" behaviour.
For examples see "RotatedPole.txt" file in tests directory
- Since:
- 15.0
- Author:
- Maciej Filocha (ICM UW)
- See Also:
- COSMO User Manual, Part 1, proj.4, Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classRotatedPole.ProviderThe math transform provider for an Rotated Pole projection.-
Nested classes/interfaces inherited from class MapProjection
MapProjection.AbstractProvider
-
-
Field Summary
-
Fields inherited from class MapProjection
centralMeridian, en0, en1, en2, en3, en4, excentricity, excentricitySquared, falseEasting, falseNorthing, globalScale, invertible, isSpherical, latitudeOfOrigin, LOGGER, scaleFactor, semiMajor, semiMinor, SKIP_SANITY_CHECKS
-
Fields inherited from class Formattable
SINGLE_LINE
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedRotatedPole(ParameterValueGroup parameters)Constructs a rotated latitude/longitude projection.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ParameterDescriptorGroupgetParameterDescriptors()Returns the parameter descriptors for this map projection.protected Point2DinverseTransformNormalized(double x, double y, Point2D ptDst)Transforms the specified (x,y) coordinates (units in radians) and stores the result inptDst(linear distance on a unit sphere).protected Point2DtransformNormalized(double x, double y, Point2D ptDst)Transforms the specified (λ,φ) coordinates (units in radians) and stores the result inptDst(linear distance on a unit sphere).-
Methods inherited from class MapProjection
checkReciprocal, equals, getParameterValues, getSourceDimensions, getTargetDimensions, getToleranceForAssertions, hashCode, inv_mlfn, inverse, mlfn, orthodromicDistance, resetWarnings, transform, transform, transform
-
Methods inherited from class AbstractMathTransform
createTransformedShape, derivative, derivative, ensureNonNull, formatWKT, getName, isIdentity, needCopy, normalizeAngle, rollLongitude, transform, transform, transform
-
Methods inherited from class Formattable
cleanupThreadLocals, toString, toWKT, toWKT, toWKT, toWKT
-
Methods inherited from interface MathTransform
derivative, isIdentity, toWKT, transform, transform, transform
-
Methods inherited from interface MathTransform2D
createTransformedShape, derivative
-
-
-
-
Constructor Detail
-
RotatedPole
protected RotatedPole(ParameterValueGroup parameters) throws ParameterNotFoundException
Constructs a rotated latitude/longitude projection.- Parameters:
parameters- The group of parameter values.- Throws:
ParameterNotFoundException- if a required parameter was not found.
-
-
Method Detail
-
transformNormalized
protected Point2D transformNormalized(double x, double y, Point2D ptDst) throws ProjectionException
Transforms the specified (λ,φ) coordinates (units in radians) and stores the result inptDst(linear distance on a unit sphere).- Specified by:
transformNormalizedin classMapProjection- Parameters:
x- The longitude of the coordinate, in radians.y- The latitude of the coordinate, in radians.ptDst- the specified coordinate point that stores the result of transformingptSrc, ornull. Ordinates will be in a dimensionless unit, as a linear distance on a unit sphere or ellipse.- Returns:
- the coordinate point after transforming (
lambda,phi) and storing the result inptDst. - Throws:
ProjectionException- if the point can't be transformed.
-
inverseTransformNormalized
protected Point2D inverseTransformNormalized(double x, double y, Point2D ptDst) throws ProjectionException
Transforms the specified (x,y) coordinates (units in radians) and stores the result inptDst(linear distance on a unit sphere).- Specified by:
inverseTransformNormalizedin classMapProjection- Parameters:
x- The easting of the coordinate, linear distance on a unit sphere or ellipse.y- The northing of the coordinate, linear distance on a unit sphere or ellipse.ptDst- the specified coordinate point that stores the result of transformingptSrc, ornull. Ordinates will be in radians.- Returns:
- the coordinate point after transforming
x,yand storing the result inptDst. - Throws:
ProjectionException- if the point can't be transformed.
-
getParameterDescriptors
public ParameterDescriptorGroup getParameterDescriptors()
Returns the parameter descriptors for this map projection. This is used for a providing a default implementation ofMapProjection.getParameterValues(), as well as arguments checking.- Specified by:
getParameterDescriptorsin classMapProjection- Returns:
- The parameter descriptors for this math transform, or
null. - See Also:
OperationMethod.getParameters()
-
-