# Package org.apache.sis.referencing.cs

package org.apache.sis.referencing.cs
Coordinate System (CS) definitions as the set of coordinate system axes that spans the coordinate space. 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 `AbstractCS`. Various subclasses are defined for various kinds of mathematical rules that determine how coordinates are associated to quantities such as angles and distances. Those SIS subclasses provide additional methods that are not part of OGC/ISO specifications:

- `AbstractCS​.forConvention(AxesConvention)`

This package provides also a `CoordinateSystems` utility class with static methods for estimating an angle between two axes, determining the change of axis directions and units between two coordinate systems, or filtering axes.

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.datum
  Relationship of a `CoordinateSystem` (an abstract mathematical entity) to the earth or other system.
  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).
- Class
  Description
  AbstractCS
  The set of coordinate system axes that spans a given coordinate space.
  AxesConvention
  High-level characteristics about the axes of a coordinate system.
  AxisFilter
  Modifications to apply on the axes of a coordinate system in order to produce a new coordinate system.
  CoordinateSystems
  Utility methods working on `CoordinateSystem` objects and their axes.
  DefaultAffineCS
  A 2- or 3-dimensional coordinate system with straight axes that are not necessarily orthogonal.
  DefaultCartesianCS
  A 2- or 3-dimensional Cartesian coordinate system made of straight orthogonal axes.
  DefaultCompoundCS
  A coordinate system made of two or more independent coordinate systems.
  DefaultCoordinateSystemAxis
  Coordinate system axis name, direction, unit and range of values.
  DefaultCylindricalCS
  A 3-dimensional coordinate system made of a polar coordinate system extended by a straight perpendicular axis.
  DefaultEllipsoidalCS
  A 2- or 3-dimensional coordinate system for geodetic latitude and longitude, optionally with ellipsoidal height.
  DefaultLinearCS
  A 1-dimensional coordinate system for points that lie on a single axis (not necessarily a straight line).
  DefaultParametricCS
  A 1-dimensional coordinate system for parametric values or functions.
  DefaultPolarCS
  A 2-dimensional coordinate system for coordinates represented by a distance from the origin and an angle from a fixed direction.
  DefaultSphericalCS
  A 3-dimensional coordinate system with one distance measured from the origin and two angular coordinates.
  DefaultTimeCS
  A 1-dimensional coordinate system for time elapsed in the specified time units from a specified time origin.
  DefaultUserDefinedCS
  A 2- or 3-dimensional coordinate system for any combination of coordinate axes not covered by other CS types.
  DefaultVerticalCS
  A 1-dimensional coordinate system for heights or depths of points.