- All Superinterfaces:
Factory
,ObjectFactory
Builds up complex coordinate systems from simpler objects or values.
CSFactory
allows applications to make coordinate systems that
cannot be created by a CSAuthorityFactory
.
This factory is very flexible, whereas the authority factory is easier to use.
So CSAuthorityFactory
can be used to make "standard" coordinate systems,
and CSFactory
can be used to make "special" coordinate systems.
Default methods
Allcreate(…)
methods in this interface are optional.
If a method is not overridden by the implementer,
the default is to throw an UnimplementedServiceException
with a message saying that the type or service is not supported.- Since:
- 1.0
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptiondefault AffineCS
createAffineCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) Creates a two dimensional affine coordinate system from the given pair of axes.default AffineCS
createAffineCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) Creates a three dimensional affine coordinate system from the given set of axes.default CartesianCS
createCartesianCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) Creates a two dimensional Cartesian coordinate system from the given pair of axes.default CartesianCS
createCartesianCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) Creates a three dimensional Cartesian coordinate system from the given set of axes.default CoordinateSystemAxis
createCoordinateSystemAxis
(Map<String, ?> properties, String abbreviation, AxisDirection direction, javax.measure.Unit<?> unit) Creates a coordinate system axis from an abbreviation and a unit.default CylindricalCS
createCylindricalCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) Creates a cylindrical coordinate system from the given set of axes.default EllipsoidalCS
createEllipsoidalCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) Creates an ellipsoidal coordinate system without ellipsoidal height.default EllipsoidalCS
createEllipsoidalCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) Creates an ellipsoidal coordinate system with ellipsoidal height.default LinearCS
createLinearCS
(Map<String, ?> properties, CoordinateSystemAxis axis) Creates a linear coordinate system.default ParametricCS
createParametricCS
(Map<String, ?> properties, CoordinateSystemAxis axis) Creates a parametric coordinate system.default PolarCS
createPolarCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) Creates a polar coordinate system from the given pair of axes.default SphericalCS
createSphericalCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) Creates a spherical coordinate system without radius.default SphericalCS
createSphericalCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) Creates a spherical coordinate system from the given set of axes.default TimeCS
createTimeCS
(Map<String, ?> properties, CoordinateSystemAxis axis) Creates a time coordinate system.default UserDefinedCS
createUserDefinedCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) Deprecated.User-defined CS needs their own constructor for instantiating their specialized type.default UserDefinedCS
createUserDefinedCS
(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) Deprecated.User-defined CS needs their own constructor for instantiating their specialized type.default VerticalCS
createVerticalCS
(Map<String, ?> properties, CoordinateSystemAxis axis) Creates a vertical coordinate system.
-
Method Details
-
createCoordinateSystemAxis
default CoordinateSystemAxis createCoordinateSystemAxis(Map<String, ?> properties, String abbreviation, AxisDirection direction, javax.measure.Unit<?> unit) throws FactoryExceptionCreates a coordinate system axis from an abbreviation and a unit.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.abbreviation
- the coordinate axis abbreviation.direction
- the axis direction.unit
- the coordinate axis unit.- Returns:
- the axis for the given properties.
- Throws:
FactoryException
- if the object creation failed.
-
createCartesianCS
default CartesianCS createCartesianCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) throws FactoryExceptionCreates a two dimensional Cartesian coordinate system from the given pair of axes.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createCartesianCS
default CartesianCS createCartesianCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) throws FactoryExceptionCreates a three dimensional Cartesian coordinate system from the given set of axes.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.axis2
- the third axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createAffineCS
default AffineCS createAffineCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) throws FactoryExceptionCreates a two dimensional affine coordinate system from the given pair of axes.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createAffineCS
default AffineCS createAffineCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) throws FactoryExceptionCreates a three dimensional affine coordinate system from the given set of axes.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.axis2
- the third axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createPolarCS
default PolarCS createPolarCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) throws FactoryExceptionCreates a polar coordinate system from the given pair of axes.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createCylindricalCS
default CylindricalCS createCylindricalCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) throws FactoryExceptionCreates a cylindrical coordinate system from the given set of axes.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.axis2
- the third axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createSphericalCS
default SphericalCS createSphericalCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) throws FactoryExceptionCreates a spherical coordinate system without radius. The two axes shall use angular units.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.- Since:
- 3.1
-
createSphericalCS
default SphericalCS createSphericalCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) throws FactoryExceptionCreates a spherical coordinate system from the given set of axes. Two axes shall use angular units and one axis shall use linear units.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.axis2
- the third axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createEllipsoidalCS
default EllipsoidalCS createEllipsoidalCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) throws FactoryExceptionCreates an ellipsoidal coordinate system without ellipsoidal height.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createEllipsoidalCS
default EllipsoidalCS createEllipsoidalCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) throws FactoryExceptionCreates an ellipsoidal coordinate system with ellipsoidal height.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.axis2
- the third axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createVerticalCS
default VerticalCS createVerticalCS(Map<String, ?> properties, CoordinateSystemAxis axis) throws FactoryExceptionCreates a vertical coordinate system.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis
- the axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createTimeCS
default TimeCS createTimeCS(Map<String, ?> properties, CoordinateSystemAxis axis) throws FactoryExceptionCreates a time coordinate system.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis
- the axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createParametricCS
default ParametricCS createParametricCS(Map<String, ?> properties, CoordinateSystemAxis axis) throws FactoryExceptionCreates a parametric coordinate system.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis
- the axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.- Since:
- 3.1
-
createLinearCS
default LinearCS createLinearCS(Map<String, ?> properties, CoordinateSystemAxis axis) throws FactoryExceptionCreates a linear coordinate system.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis
- the axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createUserDefinedCS
@Deprecated(since="3.1") default UserDefinedCS createUserDefinedCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1) throws FactoryExceptionDeprecated.User-defined CS needs their own constructor for instantiating their specialized type.Creates a two-dimensional user defined coordinate system.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-
createUserDefinedCS
@Deprecated(since="3.1") default UserDefinedCS createUserDefinedCS(Map<String, ?> properties, CoordinateSystemAxis axis0, CoordinateSystemAxis axis1, CoordinateSystemAxis axis2) throws FactoryExceptionDeprecated.User-defined CS needs their own constructor for instantiating their specialized type.Creates a three-dimensional user defined coordinate system.- Parameters:
properties
- name and other properties to give to the new object. Available properties are listed there.axis0
- the first axis.axis1
- the second axis.axis2
- the third axis.- Returns:
- the coordinate system for the given properties and axes.
- Throws:
FactoryException
- if the object creation failed.
-