Package org.jscience.geography.coordinates


package org.jscience.geography.coordinates

Provides linear or angular quantities which designate the position that a point occupies in a given reference frame or system.

Coordinates are unambigous only when the coordinates reference system to which those coordinates are related has been fully defined.

Applications may create new types of coordinates either by extending Coordinates (in which case they must provide a coordinates reference system) or simply by combining existing coordinates together. For example:[code] // High-Precision Coordinates. class Position3D extends Coordinates { public static final GeocentricCRS CRS = ...; public GeocentricCRS getCoordinateReferenceSystem { return CRS; // All instances use the same reference system. } public Real getX(Unit u) { ... } public Real getY(Unit u) { ... } public Real getZ(Unit u) { ... } ... } // Combining existing coordinates. class LatLongHeight extends CompoundCoordinates<LatLong, Height> { } class HeightTime extends CompoundCoordinates<Height, Time> { } class UtmHeightTime extends CompoundCoordinates<CompoundCoordinates<UTM, Height>, Time> { } [/code]

Conversion between coordinates is achieved through their coordinates reference system. For example:[code] // Converts UTM coordinates to Latitude/Longitude. UTM utm = UTM.valueOf(17, 'E', 444.5, 556.44, METRE); CoordinatesConverter<UTM, LatLong> utmToLatLong = UTM.CRS.getConverterTo(LatLong.CRS); LatLong latLong = utmToLatLong.convert(utm); // Converts compound coordinates to X/Y/Z geocentric coordinates. CompoundCoordinates<UTM, Height> utmHeight = new CompoundCoordinates(utm, new Height(2330.55, FOOT)); XYZ xyz = new CompoundCRS<UTM, Height>(UTM.CRS, Height.CRS).getConverterTo(XYZ.CRS).convert(utmHeight); // Converts any projected coordinates to Latitude/Longitude. Coordinates coord2d; LatLong latLong = coord2d.getCoordinateReferenceSystem().getConverterTo(LatLong.CRS).convert(coord2d); [/code]

  • Classes
    Class
    Description
    This class represents the Mean-Sea-Level vertical altitude (MSL).
    CompoundCoordinates<C1 extends Coordinates<?>,C2 extends Coordinates<?>>
    This class represents a coordinates made up by combining two coordinates objects together.
    This class designates the position that a point occupies in a given n-dimensional reference frame or system.
    This class represents the vertical height above the WGS84 ellipsoid.
    This class represents the geographic latitude/longitude coordinates onto the WGS84 ellipsoid.
    This class represents the temporal UTC time coordinates.
    This class represents the projected Universal Transverse Mercator (UTM) coordinates onto the WGS84 ellipsoid.
    This class represents the geocentric Earth-Centered, Earth-Fixed (ECEF) cartesian coordinates used in GPS/GLONASS.