org.deegree_impl.model.cs
Class CompoundCoordinateSystem

java.lang.Object
  extended byorg.deegree_impl.model.cs.Info
      extended byorg.deegree_impl.model.cs.CoordinateSystem
          extended byorg.deegree_impl.model.cs.CompoundCoordinateSystem
All Implemented Interfaces:
Dimensioned, java.io.Serializable

public class CompoundCoordinateSystem
extends CoordinateSystem

An aggregate of two coordinate systems. One of these is usually a two dimensional coordinate system such as a geographic or a projected coordinate system with a horizontal datum. The other is one-dimensional coordinate system with a vertical datum.

Version:
1.00
Author:
OpenGIS (www.opengis.org), Martin Desruisseaux
See Also:
CS_CompoundCoordinateSystem, Serialized Form

Nested Class Summary
private  class CompoundCoordinateSystem.Export
          Wrap a CompoundCoordinateSystem object for use with OpenGIS.
 
Nested classes inherited from class org.deegree_impl.model.cs.Info
Info.AngularUnit, Info.LinearUnit
 
Field Summary
private  CoordinateSystem head
          First sub-coordinate system.
private static long serialVersionUID
          Serial number for interoperability with different versions.
private  CoordinateSystem tail
          Second sub-coordinate system.
static CompoundCoordinateSystem WGS84
          A default three-dimensional coordinate system for use with geographic coordinates with heights above the ellipsoid.
 
Fields inherited from class org.deegree_impl.model.cs.Info
pool
 
Constructor Summary
(package private) CompoundCoordinateSystem(java.util.Map properties, CoordinateSystem head, CoordinateSystem tail)
          Creates a compound coordinate system.
  CompoundCoordinateSystem(java.lang.String name, CoordinateSystem head, CoordinateSystem tail)
          Creates a compound coordinate system.
 
Method Summary
(package private)  java.lang.String addString(java.lang.StringBuffer buffer)
          Fill the part inside "[...]".
 boolean equals(java.lang.Object object)
          Compares the specified object with this coordinate system for equality.
 boolean equivalents(CoordinateSystem cs)
          Returns true if this coordinate system is equivalents to the specified coordinate system.
 AxisInfo getAxis(int dimension)
          Gets axis details for dimension within coordinate system.
 Envelope getDefaultEnvelope()
          Gets default envelope of coordinate system.
 int getDimension()
          Returns the dimension of the coordinate system.
 CoordinateSystem getHeadCS()
          Returns the first sub-coordinate system.
 CoordinateSystem getTailCS()
          Returns the second sub-coordinate system.
 Unit getUnits(int dimension)
          Gets units for dimension within coordinate system.
(package private)  java.lang.Object toOpenGIS(java.lang.Object adapters)
          Returns an OpenGIS interface for this compound coordinate system.
 
Methods inherited from class org.deegree_impl.model.cs.CoordinateSystem
checkAxis, getDatum, getUnits
 
Methods inherited from class org.deegree_impl.model.cs.Info
addUnit, cachedOpenGIS, ensureAngularUnit, ensureLinearUnit, ensureNonNull, ensureNonNull, ensureTimeUnit, getAbbreviation, getAlias, getAuthority, getAuthorityCode, getName, getRemarks, hashCode, readResolve, toString
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
Serial number for interoperability with different versions.

See Also:
Constant Field Values

WGS84

public static final CompoundCoordinateSystem WGS84
A default three-dimensional coordinate system for use with geographic coordinates with heights above the ellipsoid. The head coordinate system is GeographicCoordinateSystem.WGS84 and the tail coordinate system is VerticalCoordinateSystem.ELLIPSOIDAL.


head

private final CoordinateSystem head
First sub-coordinate system.


tail

private final CoordinateSystem tail
Second sub-coordinate system.

Constructor Detail

CompoundCoordinateSystem

public CompoundCoordinateSystem(java.lang.String name,
                                CoordinateSystem head,
                                CoordinateSystem tail)
Creates a compound coordinate system.

Parameters:
name - Name to give new object.
head - Coordinate system to use for earlier ordinates.
tail - Coordinate system to use for later ordinates.

CompoundCoordinateSystem

CompoundCoordinateSystem(java.util.Map properties,
                         CoordinateSystem head,
                         CoordinateSystem tail)
Creates a compound coordinate system.

Parameters:
properties - The set of properties (see Info).
head - Coordinate system to use for earlier ordinates.
tail - Coordinate system to use for later ordinates.
Method Detail

getHeadCS

public CoordinateSystem getHeadCS()
Returns the first sub-coordinate system.

See Also:
CS_CompoundCoordinateSystem.getHeadCS()

getTailCS

public CoordinateSystem getTailCS()
Returns the second sub-coordinate system.

See Also:
CS_CompoundCoordinateSystem.getTailCS()

getDimension

public int getDimension()
Returns the dimension of the coordinate system.

Specified by:
getDimension in interface Dimensioned
Specified by:
getDimension in class CoordinateSystem
See Also:
CS_CoordinateSystem.getDimension()

getAxis

public AxisInfo getAxis(int dimension)
Gets axis details for dimension within coordinate system. Each dimension in the coordinate system has a corresponding axis.

Specified by:
getAxis in class CoordinateSystem
Parameters:
dimension - Zero based index of axis.
See Also:
CS_CoordinateSystem.getAxis(int)

getUnits

public Unit getUnits(int dimension)
Gets units for dimension within coordinate system. Each dimension in the coordinate system has corresponding units.

Specified by:
getUnits in class CoordinateSystem
Parameters:
dimension - Zero based index of axis.
See Also:
CS_CoordinateSystem.getUnits(int)

getDefaultEnvelope

public Envelope getDefaultEnvelope()
Gets default envelope of coordinate system.

Overrides:
getDefaultEnvelope in class CoordinateSystem
See Also:
CS_CoordinateSystem.getDefaultEnvelope()

equivalents

public boolean equivalents(CoordinateSystem cs)
Returns true if this coordinate system is equivalents to the specified coordinate system. Two coordinate systems are considered equivalent if the CoordinateTransformation from this to cs would be the identity transform.

Overrides:
equivalents in class CoordinateSystem
Parameters:
cs - The coordinate system (may be null).
Returns:
true if both coordinate systems are equivalent.

equals

public boolean equals(java.lang.Object object)
Compares the specified object with this coordinate system for equality.

Overrides:
equals in class CoordinateSystem

addString

java.lang.String addString(java.lang.StringBuffer buffer)
Fill the part inside "[...]". Used for formatting Well Know Text (WKT).

Overrides:
addString in class Info
Parameters:
buffer - The buffer to add string to.
Returns:
The WKT code name (e.g. "GEOGCS").

toOpenGIS

final java.lang.Object toOpenGIS(java.lang.Object adapters)
Returns an OpenGIS interface for this compound coordinate system. The returned object is suitable for RMI use. Note: The returned type is a generic Object in order to avoid too early class loading of OpenGIS interface.

Overrides:
toOpenGIS in class CoordinateSystem