The library separates coordinate representations from the logic used to convert between them.
Coordinate model types represent coordinate values. Conversion is handled by destination-oriented converter classes.
Source Coordinate
|
v
Destination Converter
|
v
Destination Coordinate
For example:
GeodeticConverter.From(geocentric);
GeocentricConverter.From(geographic);The exact public names may evolve with the coordinate terminology already established by the library.
Coordinate model classes represent coordinate values and their basic invariants. They should not contain conversion logic for every other coordinate representation.
Each supported conversion target may have a dedicated converter.
A destination converter answers:
How do I obtain this coordinate representation from a supported source representation?
Only conversions that are actually supported need to exist.
The library currently focuses on coordinate representations and deterministic conversions between them.
Broader GIS functionality, coordinate-reference-system databases, datum transformations, projections, and geodesic calculations are outside the current scope unless explicitly introduced by a later decision.