01: /*$************************************************************************************************
02: **
03: ** $Id: CoordinateSystemAxis.java,v 1.9 2005/05/23 05:13:21 desruisseaux Exp $
04: **
05: ** $Source: /cvsroot/geoapi/src/org/opengis/referencing/cs/CoordinateSystemAxis.java,v $
06: **
07: ** Copyright (C) 2003-2005 Open GIS Consortium, Inc.
08: ** All Rights Reserved. http://www.opengis.org/legal/
09: **
10: *************************************************************************************************/
11: package org.opengis.referencing.cs;
12:
13: // Direct dependencies
14: import javax.measure.unit.Unit;
15: import org.opengis.referencing.IdentifiedObject;
16:
17: // Annotations
18: //import org.opengis.annotation.UML;
19: //import static org.opengis.annotation.Obligation.*;
20: //import static org.opengis.annotation.Specification.*;
21:
22: /**
23: * Definition of a coordinate system axis.
24: * See <A HREF="package-summary.html#AxisNames">axis name constraints</A>.
25: *
26: * @version <A HREF="http://portal.opengeospatial.org/files/?artifact_id=6716">Abstract specification 2.0</A>
27: * @author Martin Desruisseaux (IRD)
28: * @since GeoAPI 1.0
29: *
30: * @see CoordinateSystem
31: * @see Unit
32: */
33: //@UML(identifier="CS_CoordinateSystemAxis", specification=ISO_19111)
34: public interface CoordinateSystemAxis extends IdentifiedObject {
35: /**
36: * The abbreviation used for this coordinate system axes. This abbreviation is also
37: * used to identify the ordinates in coordinate tuple. Examples are "<var>X</var>"
38: * and "<var>Y</var>".
39: *
40: * @return The coordinate system axis abbreviation.
41: */
42: //@UML(identifier="axisAbbrev", obligation=MANDATORY, specification=ISO_19111)
43: String getAbbreviation();
44:
45: /**
46: * Direction of this coordinate system axis. In the case of Cartesian projected
47: * coordinates, this is the direction of this coordinate system axis locally.
48: * Examples:
49: * {@linkplain AxisDirection#NORTH north} or {@linkplain AxisDirection#SOUTH south},
50: * {@linkplain AxisDirection#EAST east} or {@linkplain AxisDirection#WEST west},
51: * {@linkplain AxisDirection#UP up} or {@linkplain AxisDirection#DOWN down}.
52: * Within any set of coordinate system axes, only one of each pair of terms
53: * can be used. For earth-fixed coordinate reference systems, this direction is often
54: * approximate and intended to provide a human interpretable meaning to the axis. When a
55: * geodetic datum is used, the precise directions of the axes may therefore vary slightly
56: * from this approximate direction.
57: *
58: * Note that an {@link org.opengis.referencing.crs.EngineeringCRS} often requires
59: * specific descriptions of the directions of its coordinate system axes.
60: *
61: * @return The coordinate system axis direction.
62: */
63: //@UML(identifier="axisDirection", obligation=MANDATORY, specification=ISO_19111)
64: AxisDirection getDirection();
65:
66: /**
67: * The unit of measure used for this coordinate system axis. The value of this
68: * coordinate in a coordinate tuple shall be recorded using this unit of measure,
69: * whenever those coordinates use a coordinate reference system that uses a
70: * coordinate system that uses this axis.
71: *
72: * @return The coordinate system axis unit.
73: */
74: //@UML(identifier="axisUnitID", obligation=MANDATORY, specification=ISO_19111)
75: Unit<?> getUnit();
76: }
|