Interface EarthCoordinate

All Superinterfaces:
GeometricObject<EarthCoordinate>, Positioned<EarthCoordinate>
All Known Implementing Classes:
AERCoordinate, AlbersEqualAreaCoordinate, BonneCoordinate, CassiniSoldnerCoordinate, ECEFCoordinate, ENUCoordinate, GeodeticCoordinate, LambertAzimuthalEqualAreaCoordinate, LambertConformalConicCoordinate, MercatorCoordinate, MGRSCoordinate, PolyconicCoordinate, UPSCoordinate, UTMCoordinate

public interface EarthCoordinate extends Positioned<EarthCoordinate>, GeometricObject<EarthCoordinate>
Base interface for all Earth coordinate systems.

This interface unifies all coordinate representations (Geodetic, UTM, MGRS, ECEF, etc.) under a common contract while implementing Positioned and GeometricObject for spatial operations and geometry engine integration.

Since:
1.0
Author:
Silvere Martin-Michiellot, Gemini AI (Google DeepMind)
  • Method Details

    • getCoordinateSystem

      String getCoordinateSystem()
      Returns the coordinate system name (e.g., "WGS84", "UTM", "MGRS").
      Returns:
      the coordinate system identifier
    • toGeodetic

      GeodeticCoordinate toGeodetic()
      Converts this coordinate to geodetic (lat/lon/height) form.
      Returns:
      the geodetic representation
    • toECEF

      ECEFCoordinate toECEF()
      Converts this coordinate to ECEF Cartesian form.
      Returns:
      the ECEF representation
    • getEllipsoid

      ReferenceEllipsoid getEllipsoid()
      Returns the reference ellipsoid used by this coordinate.
      Returns:
      the ellipsoid model
    • distanceTo

      default Quantity<Length> distanceTo(EarthCoordinate other)
      Calculates the distance to another Earth coordinate.
      Parameters:
      other - the target coordinate
      Returns:
      distance as a Length quantity
    • getPosition

      default EarthCoordinate getPosition()
      Returns this coordinate as the position (for Positioned interface).
      Specified by:
      getPosition in interface Positioned<EarthCoordinate>
      Returns:
      the position.
    • dimension

      default int dimension()
      Description copied from interface: GeometricObject
      Returns the intrinsic dimension of this geometric object.

      Examples:

      • Point: 0
      • Line/Segment: 1
      • Plane/Surface: 2
      • Volume: 3

      Specified by:
      dimension in interface GeometricObject<EarthCoordinate>
      Returns:
      the dimension
    • ambientDimension

      default int ambientDimension()
      Description copied from interface: GeometricObject
      Returns the dimension of the ambient space containing this object.

      For example, a 2D plane in 3D space has dimension=2 but ambientDimension=3.

      Specified by:
      ambientDimension in interface GeometricObject<EarthCoordinate>
      Returns:
      the ambient space dimension
    • description

      default String description()
      Description copied from interface: GeometricObject
      Returns a human-readable description of this geometric object.
      Specified by:
      description in interface GeometricObject<EarthCoordinate>
      Returns:
      description string