# Package org.apache.sis.referencing.datum

package org.apache.sis.referencing.datum
Relationship of a `CoordinateSystem` (an abstract mathematical entity) to the earth or other system. An explanation for this package is provided in the OpenGIS® javadoc. The remaining discussion on this page is specific to the SIS implementation.

The root class in this package is `AbstractDatum`. Various subclasses are defined for various kinds of relationship to the Earth or time (geodetic, vertical, temporal), or to platforms (mobile or not) (engineering, image). Some of those SIS subclasses provide additional methods that are not part of OGC/ISO specifications:

- `DefaultEllipsoid​.getAuthalicRadius()`
- `DefaultEllipsoid​.getEccentricity()`
- `DefaultPrimeMeridian​.getGreenwichLongitude(Unit)`
- `DefaultGeodeticDatum​.getBursaWolfParameters()`
- `DefaultGeodeticDatum​.getPositionVectorTransformation(GeodeticDatum, Extent)`

## Datum shifts

Three classes are provided in support of coordinate transformations between different datums:

- `BursaWolfParameters` performs an approximation based on a translation, rotation and scale of geocentric coordinates.
- `TimeDependentBWP` is like `BursaWolfParameters`, but varies with time for taking in account the motion of plate tectonic.
- `DatumShiftGrid` is used for more accurate transformations than what `BursaWolfParameters` allows, by interpolating the geographic or geocentric translations in a grid (e.g. NADCON or NTv2) instead of apply the same transformation for every points.

Since:
  0.4

Defined in the `sis-referencing` module

- Related Packages
  Package
  Description
  org.apache.sis.referencing
  Base classes for reference systems used for general positioning.
  org.apache.sis.referencing.crs
  Coordinate Reference System (CRS) definitions as coordinate systems related to the earth through datum.
  org.apache.sis.referencing.cs
  Coordinate System (CS) definitions as the set of coordinate system axes that spans the coordinate space.
  org.apache.sis.referencing.factory
  Creates Coordinate Reference System (CRS) objects from given properties or authority codes.
  org.apache.sis.referencing.gazetteer
  Mapping between geographic identifiers (addresses, grid indexes…) and locations (descriptions, coordinates…).
  org.apache.sis.referencing.operation
  Relationship between any two Coordinate Reference Systems (CRS).
- Classes
  Class
  Description
  AbstractDatum
  Specifies the relationship of a Coordinate System to the earth.
  BursaWolfParameters
  Parameters for a geographic transformation between two datum having the same prime meridian.
  DatumShiftGrid<C extends Quantity<C>,T extends Quantity<T>>
  Small but non-constant translations to apply on coordinates for datum shifts or other transformation process.
  DefaultEllipsoid
  Geometric figure that can be used to describe the approximate shape of the earth.
  DefaultEngineeringDatum
  Defines the origin of an engineering coordinate reference system.
  DefaultGeodeticDatum
  Defines the location and orientation of an ellipsoid that approximates the shape of the earth.
  DefaultImageDatum
  Defines the origin of an image coordinate reference system.
  DefaultParametricDatum
  Defines the origin of a parametric coordinate reference system.
  DefaultPrimeMeridian
  Defines the origin from which longitude values are determined.
  DefaultTemporalDatum
  Defines the origin of a temporal coordinate reference system.
  DefaultVerticalDatum
  Identifies a particular reference level surface used as a zero-height surface.
  TimeDependentBWP
  Parameters for a time-dependent geographic transformation between two datum.