- java.lang.Object
-
- spice.basic.Coordinates
-
- spice.basic.PlanetographicCoordinates
-
public class PlanetographicCoordinates extends Coordinates
Class PlanetographicCoordinates represents sets of coordinates expressed in the planetographic system: positions are specified by longitude, latitude, and altitude.Planetographic coordinates are defined using a reference spheroid. The spheroid may be oblate, prolate, or a sphere.
By default, for objects other than the Earth, Moon, and Sun, planetographic longitude is defined such that, for a distant, fixed observer, the sub-observer point's longitude increases with time. For the Earth, Moon and Sun, longitude is positive East by default. The default sense of planetographic longitude for a given body can be overridden via kernel pool assignments; see Particulars for details.
Planetographic latitude of a point is the angle between the X-Y plane and the line normal to the reference spheroid that passes through the point and the closest point on the reference spheroid to the point.
Version 1.0.0 28-NOV-2009 (NJB)
-
-
Field Summary
Fields Modifier and Type Field Description private double
altitude
private Body
body
private double
f
private double
latitude
private double
longitude
private double
re
-
Fields inherited from class spice.basic.Coordinates
ALTITUDE, COLATITUDE, CYLINDRICAL, DECLINATION, GEODETIC, LATITUDE, LATITUDINAL, LONGITUDE, PLANETOGRAPHIC, RA, RADEC, RADIUS, RANGE, RECTANGULAR, SPHERICAL, X, Y, Z
-
-
Constructor Summary
Constructors Constructor Description PlanetographicCoordinates()
No-arguments constructor.PlanetographicCoordinates(Body body, double longitude, double latitude, double altitude, double re, double f)
Construct a PlanetographicCoordinates instance from a Body, an equatorial radius, flattening coefficient, altitude, longitude, and latitude.Angular units are radians.PlanetographicCoordinates(Body body, Vector3 v, double re, double f)
Construct a PlanetographicCoordinates instance from a Body, a 3-vector, and reference spheroid parameters.PlanetographicCoordinates(PlanetographicCoordinates coords)
Copy constructor.
-
Method Summary
Modifier and Type Method Description double
getAltitude()
Return altitude.Body
getBody()
Return central body with with this coordinate instance is associated.double
getEquatorialRadius()
Return the equatorial radius of the reference spheroid.double
getFlatteningCoefficient()
Return the flattening coefficient of the reference spheroid.double
getLatitude()
Return latitude in radians.double
getLongitude()
Return longitude in radians.Matrix33
getPgrRecJacobian()
Return the Jacobian matrix of the planetographic-to-rectangular coordinate transformation at the point specified by this instance.static Matrix33
getRecPgrJacobian(Body body, Vector3 v, double re, double f)
Return the Jacobian matrix of the rectangular-to-planetographic coordinate transformation at the point specified by a Body, a 3-vector and reference spheroid parameters.Vector3
toRectangular()
Convert this instance to rectangular coordinates.
-
-
-
Field Detail
-
body
private Body body
-
re
private double re
-
altitude
private double altitude
-
f
private double f
-
latitude
private double latitude
-
longitude
private double longitude
-
-
Constructor Detail
-
PlanetographicCoordinates
public PlanetographicCoordinates()
No-arguments constructor.
-
PlanetographicCoordinates
public PlanetographicCoordinates(PlanetographicCoordinates coords) throws SpiceException
Copy constructor.This method creates a deep copy.
- Parameters:
coords
- PlanetographicCoordinates- Throws:
SpiceException
- exception
-
PlanetographicCoordinates
public PlanetographicCoordinates(Body body, double longitude, double latitude, double altitude, double re, double f) throws SpiceException
Construct a PlanetographicCoordinates instance from a Body, an equatorial radius, flattening coefficient, altitude, longitude, and latitude.Angular units are radians.- Parameters:
body
- Bodyf
- doublelongitude
- doublere
- doublelatitude
- doublealtitude
- double- Throws:
SpiceException
- exception
-
PlanetographicCoordinates
public PlanetographicCoordinates(Body body, Vector3 v, double re, double f) throws SpiceException
Construct a PlanetographicCoordinates instance from a Body, a 3-vector, and reference spheroid parameters.- Parameters:
body
- Bodyf
- doublev
- Vector3re
- double- Throws:
SpiceException
- exception
-
-
Method Detail
-
getBody
public Body getBody() throws SpiceException
Return central body with with this coordinate instance is associated.- Returns:
- Body
- Throws:
SpiceException
- exception
-
getLongitude
public double getLongitude()
Return longitude in radians.- Returns:
- double
-
getLatitude
public double getLatitude()
Return latitude in radians.- Returns:
- double
-
getAltitude
public double getAltitude()
Return altitude.- Returns:
- double
-
getEquatorialRadius
public double getEquatorialRadius()
Return the equatorial radius of the reference spheroid.- Returns:
- double
-
getFlatteningCoefficient
public double getFlatteningCoefficient()
Return the flattening coefficient of the reference spheroid.- Returns:
- double
-
toRectangular
public Vector3 toRectangular() throws SpiceException
Convert this instance to rectangular coordinates.- Specified by:
toRectangular
in classCoordinates
- Returns:
- Vector3
- Throws:
SpiceException
- exception
-
getPgrRecJacobian
public Matrix33 getPgrRecJacobian() throws SpiceException
Return the Jacobian matrix of the planetographic-to-rectangular coordinate transformation at the point specified by this instance.- Returns:
- Matrix33
- Throws:
SpiceException
- exception
-
getRecPgrJacobian
public static Matrix33 getRecPgrJacobian(Body body, Vector3 v, double re, double f) throws SpiceException
Return the Jacobian matrix of the rectangular-to-planetographic coordinate transformation at the point specified by a Body, a 3-vector and reference spheroid parameters.- Parameters:
body
- Bodyf
- doublev
- Vector3re
- double- Returns:
- Matrix33
- Throws:
SpiceException
- exception
-
-