Class PolarStereographic
- Object
-
- FormattableObject
-
- AbstractMathTransform
-
- AbstractMathTransform2D
-
- NormalizedProjection
-
- PolarStereographic
-
- All Implemented Interfaces:
Serializable,Parameterized,LenientComparable,MathTransform,MathTransform2D
public class PolarStereographic extends NormalizedProjection
Polar Stereographic projection (EPSG codes 9810, 9829, 9830). This is a special case ofObliqueStereographicwhen the projection origin is at a pole.EPSG defines three variants for this projection, A, B and C, which differ by the way the parameters are specified. The "Polar Stereographic (variant B)" projection includes a "Latitude of standard parallel" parameter where is effective the scale factor (normally 1). The "Polar Stereographic (variant A)" forces its "Latitude of natural origin" parameter to ±90°, depending on the hemisphere.
- Since:
- 0.6
- See Also:
ObliqueStereographic, Serialized Form
Defined in the
sis-referencingmodule
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class NormalizedProjection
NormalizedProjection.ParameterRole
-
-
Field Summary
-
Fields inherited from class NormalizedProjection
eccentricity, eccentricitySquared
-
-
Constructor Summary
Constructors Constructor Description PolarStereographic(OperationMethod method, Parameters parameters)Creates a Polar Stereographic projection from the given parameters.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MathTransformcreateMapProjection(MathTransformFactory factory)Returns the sequence of normalization →this→ denormalization transforms as a whole.protected voidinverseTransform(double[] srcPts, int srcOff, double[] dstPts, int dstOff)Converts the specified (x,y) coordinates and stores the result indstPts(angles in radians).Matrixtransform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate)Converts the specified (θ,φ) coordinate (units in radians) and stores the result indstPts.-
Methods inherited from class NormalizedProjection
computeHashCode, equals, getContextualParameters, getParameterDescriptors, getParameterValues, inverse, tryConcatenate
-
Methods inherited from class AbstractMathTransform2D
createTransformedShape, derivative, getSourceDimensions, getTargetDimensions, transform
-
Methods inherited from class AbstractMathTransform
derivative, equals, formatTo, hashCode, isIdentity, transform, transform, transform, transform, transform
-
Methods inherited from class FormattableObject
print, toString, toString, toWKT
-
Methods inherited from class Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface MathTransform
derivative, isIdentity, toWKT, transform, transform, transform, transform, transform
-
-
-
-
Constructor Detail
-
PolarStereographic
public PolarStereographic(OperationMethod method, Parameters parameters)
Creates a Polar Stereographic projection from the given parameters. Themethodargument can be the description of one of the following:- "Polar Stereographic (Variant A)".
- "Polar Stereographic (Variant B)".
- "Polar Stereographic (Variant C)".
- Parameters:
method- description of the projection parameters.parameters- the parameter values of the projection to create.
-
-
Method Detail
-
createMapProjection
public MathTransform createMapProjection(MathTransformFactory factory) throws FactoryException
Returns the sequence of normalization →this→ denormalization transforms as a whole. The transform returned by this method expects (longitude, latitude) coordinates in degrees and returns (x,y) coordinates in metres.The non-linear part of the returned transform will be
thistransform, except if the ellipsoid is spherical. In the later case,thistransform will be replaced by a simplified implementation.- Overrides:
createMapProjectionin classNormalizedProjection- Parameters:
factory- the factory to use for creating the transform.- Returns:
- the map projection from (λ,φ) to (x,y) coordinates.
- Throws:
FactoryException- if an error occurred while creating a transform.- See Also:
ContextualParameters.completeTransform(MathTransformFactory, MathTransform)
-
transform
public Matrix transform(double[] srcPts, int srcOff, double[] dstPts, int dstOff, boolean derivate) throws ProjectionException
Converts the specified (θ,φ) coordinate (units in radians) and stores the result indstPts. In addition, opportunistically computes the projection derivative ifderivateistrue.- Specified by:
transformin classNormalizedProjection- Parameters:
srcPts- the array containing the source point coordinate, as (longitude, latitude) angles in radians.srcOff- the offset of the single coordinate to be converted in the source array.dstPts- the array into which the converted coordinate is returned (may be the same thansrcPts). Coordinates will be expressed in a dimensionless unit, as a linear distance on a unit sphere or ellipse.dstOff- the offset of the location of the converted coordinate that is stored in the destination array.derivate-truefor computing the derivative, orfalseif not needed.- Returns:
- the matrix of the projection derivative at the given source position,
or
nullif thederivateargument isfalse. - Throws:
ProjectionException- if the coordinate can not be converted.- See Also:
AbstractMathTransform.derivative(DirectPosition),AbstractMathTransform.transform(DirectPosition, DirectPosition),MathTransforms.derivativeAndTransform(MathTransform, double[], int, double[], int)
-
inverseTransform
protected void inverseTransform(double[] srcPts, int srcOff, double[] dstPts, int dstOff) throws ProjectionExceptionConverts the specified (x,y) coordinates and stores the result indstPts(angles in radians).- Specified by:
inverseTransformin classNormalizedProjection- Parameters:
srcPts- the array containing the source point coordinate, as linear distance on a unit sphere or ellipse.srcOff- the offset of the point to be converted in the source array.dstPts- the array into which the converted point coordinate is returned (may be the same thansrcPts). Coordinates will be (longitude, latitude) angles in radians.dstOff- the offset of the location of the converted point that is stored in the destination array.- Throws:
ProjectionException- if the point can not be converted.
-
-