org.geotoolkit.referencing.operation.projection
Class Orthographic
Object
FormattableObject
AbstractMathTransform
AbstractMathTransform2D
UnitaryProjection
Orthographic
- All Implemented Interfaces:
- Serializable, Formattable, Parameterized, LenientComparable, MathTransform, MathTransform2D
@Immutable
public class Orthographic
- extends UnitaryProjection
Orthographic Projection. See the
Orthographic projection on
MathWorld for an overview. See any of the following providers for a list of programmatic
parameters:
Description
This is a perspective azimuthal (planar) projection that is neither conformal nor equal-area.
It resembles a globe and only one hemisphere can be seen at a time, since it is a perspective
projection from infinite distance. While not useful for accurate measurements, this projection
is useful for pictorial views of the world. Only the spherical form is given here.
References
- Proj-4.4.7 available at www.remotesensing.org/proj.
Relevant files are: PJ_ortho.c, pj_fwd.c and pj_inv.c.
- John P. Snyder (Map Projections - A Working Manual,
U.S. Geological Survey Professional Paper 1395, 1987)
- Since:
- 2.0
- Version:
- 3.18
- Author:
- Rueben Schulz (UBC), Martin Desruisseaux (Geomatys), Rémi Maréchal (Geomatys)
- See Also:
- Serialized Form
- Module:
|
Method Summary |
static MathTransform2D |
create(ParameterDescriptorGroup descriptor,
ParameterValueGroup values)
Creates an Orthographic projection from the given parameters. |
Matrix |
derivative(Point2D point)
Gets the derivative of this transform at a point. |
boolean |
equals(Object object,
ComparisonMode mode)
Compares the given object with this transform for equivalence. |
ParameterDescriptorGroup |
getParameterDescriptors()
Returns the parameter descriptors for this unitary projection. |
protected void |
inverseTransform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff)
Transforms the specified (x,y) coordinates
and stores the result in dstPts (angles in radians). |
protected void |
transform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff)
Transforms the specified (λ,φ) coordinates
(units in radians) and stores the result in dstPts (linear distance
on a unit sphere). |
| Methods inherited from class AbstractMathTransform |
createTransformedShape, derivative, ensureNonNull, equals, formatWKT, getName, hashCode, isIdentity, rollLongitude, transform, transform, transform, transform |
Orthographic
protected Orthographic(UnitaryProjection.Parameters parameters)
- Constructs a new map projection from the supplied parameters.
- Parameters:
parameters - The parameters of the projection to be created.
create
public static MathTransform2D create(ParameterDescriptorGroup descriptor,
ParameterValueGroup values)
- Creates an Orthographic projection from the given parameters. The descriptor argument is
usually
Orthographic.PARAMETERS, but
is not restricted to. If a different descriptor is supplied, it is user's responsibility
to ensure that it is suitable to an Orthographic projection.
- Parameters:
descriptor - Typically Orthographic.PARAMETERS.values - The parameter values of the projection to create.
- Returns:
- The map projection.
- Since:
- 3.00
getParameterDescriptors
public ParameterDescriptorGroup getParameterDescriptors()
- Returns the parameter descriptors for this unitary projection. Note that
the returned descriptor is about the unitary projection, not the full one.
- Specified by:
getParameterDescriptors in interface Parameterized- Overrides:
getParameterDescriptors in class AbstractMathTransform2D
- Returns:
- The parameter descriptors for this math transform, or
null. - See Also:
OperationMethod.getParameters()
transform
protected void transform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff)
throws ProjectionException
- Transforms the specified (λ,φ) coordinates
(units in radians) and stores the result in
dstPts (linear distance
on a unit sphere).
- Specified by:
transform in class UnitaryProjection
- Parameters:
srcPts - The array containing the source point coordinate, as (longitude,
latitude) angles in radians.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 than srcPts). Ordinates will be in a dimensionless unit,
as a linear distance on a unit sphere or ellipse.dstOff - The offset of the location of the converted point that is
stored in the destination array.
- Throws:
ProjectionException - if the point can't be converted.
inverseTransform
protected void inverseTransform(double[] srcPts,
int srcOff,
double[] dstPts,
int dstOff)
throws ProjectionException
- Transforms the specified (x,y) coordinates
and stores the result in
dstPts (angles in radians).
- Specified by:
inverseTransform in class UnitaryProjection
- 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 than srcPts). Ordinates 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't be converted.
equals
public boolean equals(Object object,
ComparisonMode mode)
- Compares the given object with this transform for equivalence.
- Specified by:
equals in interface LenientComparable- Overrides:
equals in class UnitaryProjection
- Parameters:
object - The object to compare with this unitary projection for equivalence.mode - The strictness level of the comparison. Default to STRICT.
- Returns:
true if the given object is equivalent to this unitary projection.
derivative
public Matrix derivative(Point2D point)
throws ProjectionException
- Gets the derivative of this transform at a point.
- Specified by:
derivative in interface MathTransform2D- Overrides:
derivative in class AbstractMathTransform
- Parameters:
point - The coordinate point where to evaluate the derivative.
- Returns:
- The derivative at the specified point as a 2×2 matrix.
- Throws:
ProjectionException - if the derivative can't be evaluated at the specified point.- Since:
- 3.18
- See Also:
MathTransform2D.derivative(Point2D)
Copyright © 2009-2011 Geotoolkit.org. All Rights Reserved.