|PREV PACKAGE NEXT PACKAGE||FRAMES NO FRAMES|
|AffineCS||A two- or three-dimensional coordinate system with straight axes that are not necessarily orthogonal.|
|CartesianCS||A 1-, 2-, or 3-dimensional coordinate system.|
|CoordinateSystem||The set of coordinate system axes that spans a given coordinate space.|
|CoordinateSystemAxis||Definition of a coordinate system axis.|
|CSAuthorityFactory||Creates coordinate systems using authority codes.|
|CSFactory||Builds up complex coordinate systems from simpler objects or values.|
|CylindricalCS||A three-dimensional coordinate system consisting of a polar coordinate system extended by a straight coordinate axis perpendicular to the plane spanned by the polar coordinate system.|
|EllipsoidalCS||A two- or three-dimensional coordinate system in which position is specified by geodetic latitude, geodetic longitude, and (in the three-dimensional case) ellipsoidal height.|
|LinearCS||A one-dimensional coordinate system that consists of the points that lie on the single axis described.|
|PolarCS||A two-dimensional coordinate system in which position is specified by the distance from the origin and the angle between the line from the origin to a point and a reference direction.|
|SphericalCS||A three-dimensional coordinate system with one distance measured from the origin and two angular coordinates.|
|TimeCS||A one-dimensional coordinate system containing a single time axis, used to describe the temporal position of a point in the specified time units from a specified time origin.|
|UserDefinedCS||A two- or three-dimensional coordinate system that consists of any combination of coordinate axes not covered by any other Coordinate System type.|
|VerticalCS||A one-dimensional coordinate system used to record the heights (or depths) of points.|
|AxisDirection||The direction of positive increments in the coordinate value for a coordinate system axis.|
|RangeMeaning||Meaning of the axis value range specified through minimum value and maximum value.|
Coordinate systems and their axis. The following is adapted from OpenGIS® Spatial Referencing by Coordinates (Topic 2) specification.
The coordinates of points are recorded in a coordinate system. A coordinate system is the set of coordinate system axes that spans the coordinate space. This concept implies the set of mathematical rules that determine how coordinates are associated with invariant quantities such as angles and distances. In other words, a coordinate system implies how coordinates are calculated from geometric elements such as distances and angles and vice versa. The calculus required to derive angles and distances from point coordinates and vice versa in a map plane is simple Euclidean 2D arithmetic. To do the same on the surface of an ellipsoid (curved 2D space) involves more complex ellipsoidal calculus. These rules cannot be specified in detail, but are implied in the geometric properties of the coordinate space.
NOTE: The word "distances" is used loosely in the above description. Strictly speaking distances are not invariant quantities, as they are expressed in the unit of measure defined for the coordinate system; ratios of distances are invariant.
One coordinate system may be used by multiple coordinate reference systems. A coordinate system is composed of an ordered set of coordinate system axes, the number of axes being equal to the dimension of the space of which it describes the geometry. Its axes can be spatial, temporal, or mixed. Coordinates in coordinate tuples shall be supplied in the same order as the coordinate axes are defined.
The dimension of the coordinate space, the names, the units of measure, the directions and sequence of the axes are all part of the Coordinate System definition. The number of coordinates in a tuple and consequently the number of coordinate axes in a coordinate system shall be equal to the number of coordinate axes in the coordinate system. It is therefore not permitted to supply a coordinate tuple with two heights of different definition in the same coordinate tuple.
Coordinate systems are divided into subtypes by the geometric properties of the coordinate space spanned and the geometric properties of the axes themselves (straight or curved; perpendicular or not). Certain subtypes of coordinate system can only be used with specific subtypes of coordinate reference system.
A coordinate system is composed of an ordered set of coordinate system axes. Each of its axes is completely characterised by a unique combination of axis name, axis abbreviation, axis direction and axis unit of measure.
The concept of coordinate axis requires some clarification. Consider an arbitrary x, y, z coordinate system. The x-axis may be defined as the locus of points with y = z = 0. This is easily enough understood if the x, y, z coordinate system is a Cartesian system and the space it describes is Euclidean. It becomes a bit more difficult to understand in the case of a strongly curved space, such as the surface of an ellipsoid, its geometry described by an ellipsoidal coordinate system (2D or 3D). Applying the same definition by analogy to the curvilinear latitude and longitude coordinates the latitude axis would be the equator and the longitude axis would be the prime meridian, which is not a satisfactory definition.
Bearing in mind that the order of the coordinates in a coordinate tuple must be the same as the defined order of the coordinate axes, the "i-th" coordinate axis of a coordinate system is defined as the locus of points for which all coordinates with sequence number not equal to "i", have a constant value locally (whereby i = 1...n, and n is the dimension of the coordinate space).
It will be evident that the addition of the word "locally" in this definition apparently adds an element of ambiguity and this is intentional. However, the definition of the coordinate parameter associated with any axis must be unique. The coordinate axis itself should not be interpreted as a unique mathematical object, the associated coordinate parameter should. For example, geodetic latitude is defined as the "Angle from the equatorial plane to the perpendicular to the ellipsoid through a given point, northwards usually treated as positive". However, when used in an ellipsoidal coordinate system the geodetic latitude axis will be described as pointing "north". In two different points on the ellipsoid the direction "north" will be a spatially different direction, but the concept of latitude is the same.
Furthermore the specified direction of the coordinate axes is often only approximate; two geographic coordinate reference systems will make use of the same ellipsoidal coordinate system. These coordinate systems are associated with the earth through two different geodetic datums, which may lead to the two systems being slightly rotated w.r.t. each other.
Usage of coordinate system axis names is constrained by geodetic custom in a number of cases, depending mainly on the coordinate reference system type. These constraints are shown in the table below. This constraint works in two directions; for example the names "geodetic latitude" and "geodetic longitude" shall be used to designate the coordinate axis names associated with a geographic coordinate reference system. Conversely, these names shall not be used in any other context.
|CS||CRS||Permitted coordinate system axis names|
|Cartesian||Geocentric||Geocentric X, Geocentric Y, Geocentric Z|
|Spherical||Geocentric||Spherical Latitude, Spherical Longitude, Geocentric Radius|
|Ellipsoidal||Geographic||Geodetic Latitude, Geodetic Longitude, Ellipsoidal height (if 3D)|
|Vertical||Vertical||Gravity-related height or Depth|
|Cartesian||Projected||Easting or Westing, Northing or Southing|
Image and engineering coordinate reference systems may make use of names specific to the local context or custom and are therefore not included as constraints in the above list.
Departure from OGC/ISO specification:
ISO 19111 defines
ImageCSunions for type safety, which ensures, for example, that a
GeodeticCRSonly be associated to a
SphericalCS. However the
unionconstruct found in some languages like C/C++ is not available in Java. In the particular case of
ImageCS, the same type-safety objective can be obtained through a slight change in the interface hierarchy (see the departure documented in
CartesianCS). For the other two unions (
EngineeringCS), no workaround is proposed.
|PREV PACKAGE NEXT PACKAGE||FRAMES NO FRAMES|