Package org.apache.sis.referencing.cs
Class DefaultCompoundCS
java.lang.Object
org.apache.sis.io.wkt.FormattableObject
org.apache.sis.referencing.AbstractIdentifiedObject
org.apache.sis.referencing.cs.AbstractCS
org.apache.sis.referencing.cs.DefaultCompoundCS
- All Implemented Interfaces:
Serializable
,Formattable
,Deprecable
,LenientComparable
,org.opengis.referencing.cs.CoordinateSystem
,org.opengis.referencing.IdentifiedObject
A coordinate system made of two or more independent coordinate systems.
Used with CRS | Permitted axis names |
---|---|
Compound | (not applicable) |
Immutability and thread safety
This class is immutable and thus thread-safe if the property values (not necessarily the map itself) and theCoordinateSystemAxis
instances given to the constructor are also immutable. Unless otherwise
noted in the javadoc, this condition holds if all components were created using only SIS factories and static
constants.- Since:
- 0.4
- Version:
- 0.6
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final List<org.opengis.referencing.cs.CoordinateSystem>
The coordinate systems.private static final long
Serial number for inter-operability with different versions.Fields inherited from class org.apache.sis.referencing.cs.AbstractCS
INVALID_DIRECTION, INVALID_UNIT, VALID
Fields inherited from class org.apache.sis.referencing.AbstractIdentifiedObject
DEPRECATED_KEY, LOCALE_KEY
Fields inherited from interface org.opengis.referencing.IdentifiedObject
ALIAS_KEY, IDENTIFIERS_KEY, NAME_KEY, REMARKS_KEY
-
Constructor Summary
ConstructorsModifierConstructorDescriptionDefaultCompoundCS
(Map<String, ?> properties, org.opengis.referencing.cs.CoordinateSystem... components) Constructs a coordinate system from a set of properties and a sequence of coordinate systems.DefaultCompoundCS
(org.opengis.referencing.cs.CoordinateSystem... components) Constructs a compound coordinate system from a sequence of coordinate systems.private
DefaultCompoundCS
(org.opengis.referencing.cs.CoordinateSystem[] components, org.opengis.referencing.cs.CoordinateSystemAxis[] axes) This is a work around for RFE #4093999 in Sun's bug database ("Relax constraint on placement of this()/super() call in constructors"). -
Method Summary
Modifier and TypeMethodDescriptionprivate static org.opengis.referencing.cs.CoordinateSystem[]
clone
(org.opengis.referencing.cs.CoordinateSystem[] components) Returns a clone of the given array, making sure that it contains only non-null elements.boolean
equals
(Object object, ComparisonMode mode) Compares this coordinate system with the specified object for equality.private static org.opengis.referencing.cs.CoordinateSystemAxis[]
getAxes
(org.opengis.referencing.cs.CoordinateSystem[] components) Returns all axes in the given sequence of components.List<org.opengis.referencing.cs.CoordinateSystem>
Returns all coordinate systems in this compound CS.Methods inherited from class org.apache.sis.referencing.cs.AbstractCS
castOrCopy, computeHashCode, createForAxes, forConvention, formatTo, getAxis, getDimension, getInterface, unexpectedDimension, validateAxis
Methods inherited from class org.apache.sis.referencing.AbstractIdentifiedObject
castOrCopy, equals, formatTo, getAlias, getDescription, getIdentifiers, getName, getRemarks, hashCode, isDeprecated, isHeuristicMatchForName
Methods inherited from class org.apache.sis.io.wkt.FormattableObject
print, toString, toString, toWKT
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.opengis.referencing.IdentifiedObject
getAlias, getIdentifiers, getName, getRemarks, toWKT
-
Field Details
-
serialVersionUID
private static final long serialVersionUIDSerial number for inter-operability with different versions.- See Also:
-
components
The coordinate systems.
-
-
Constructor Details
-
DefaultCompoundCS
public DefaultCompoundCS(Map<String, ?> properties, org.opengis.referencing.cs.CoordinateSystem... components) Constructs a coordinate system from a set of properties and a sequence of coordinate systems. The properties map is given unchanged to the super-class constructor. The following table is a reminder of main (not all) properties:Recognized properties (non exhaustive list) Property name Value type Returned by "name" ReferenceIdentifier
orString
AbstractIdentifiedObject.getName()
"alias" GenericName
orCharSequence
(optionally as array)AbstractIdentifiedObject.getAlias()
"identifiers" ReferenceIdentifier
(optionally as array)AbstractIdentifiedObject.getIdentifiers()
"remarks" InternationalString
orString
AbstractIdentifiedObject.getRemarks()
- Parameters:
properties
- the properties to be given to the identified object.components
- the set of coordinate system.
-
DefaultCompoundCS
public DefaultCompoundCS(org.opengis.referencing.cs.CoordinateSystem... components) Constructs a compound coordinate system from a sequence of coordinate systems. A default name for this CS will be inferred from the names of all specified CS.- Parameters:
components
- the set of coordinate system.
-
DefaultCompoundCS
@Workaround(library="JDK", version="1.7") private DefaultCompoundCS(org.opengis.referencing.cs.CoordinateSystem[] components, org.opengis.referencing.cs.CoordinateSystemAxis[] axes) This is a work around for RFE #4093999 in Sun's bug database ("Relax constraint on placement of this()/super() call in constructors").- Parameters:
components
- the coordinate systems.
-
-
Method Details
-
clone
private static org.opengis.referencing.cs.CoordinateSystem[] clone(org.opengis.referencing.cs.CoordinateSystem[] components) Returns a clone of the given array, making sure that it contains only non-null elements. -
getAxes
private static org.opengis.referencing.cs.CoordinateSystemAxis[] getAxes(org.opengis.referencing.cs.CoordinateSystem[] components) Returns all axes in the given sequence of components. -
getComponents
Returns all coordinate systems in this compound CS.- Returns:
- all coordinate systems in this compound CS.
-
equals
Compares this coordinate system with the specified object for equality.- Specified by:
equals
in interfaceLenientComparable
- Overrides:
equals
in classAbstractCS
- Parameters:
object
- the object to compare tothis
.mode
-STRICT
for performing a strict comparison, orIGNORE_METADATA
for comparing only properties relevant to coordinate transformations.- Returns:
true
if both objects are equal.- See Also:
-