Package org.apache.sis.geometry
Class DirectPosition1D
- Object
-
- FormattableObject
-
- AbstractDirectPosition
-
- DirectPosition1D
-
- All Implemented Interfaces:
Serializable
,Cloneable
,Position
,DirectPosition
public class DirectPosition1D extends AbstractDirectPosition implements Serializable, Cloneable
A one-dimensional position within some coordinate reference system.- Since:
- 0.3
- See Also:
DirectPosition2D
,GeneralDirectPosition
,CoordinateFormat
, Serialized Form
Defined in the
sis-referencing
module
-
-
Field Summary
Fields Modifier and Type Field Description double
coordinate
The coordinate value.
-
Constructor Summary
Constructors Constructor Description DirectPosition1D()
Constructs a position initialized to (0) with anull
coordinate reference system.DirectPosition1D(double coordinate)
Constructs a 1D position from the specified coordinate.DirectPosition1D(CharSequence wkt)
Constructs a position initialized to the values parsed from the given string in Well Known Text (WKT) format.DirectPosition1D(CoordinateReferenceSystem crs)
Constructs a position with the specified coordinate reference system.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DirectPosition1D
clone()
Returns a copy of this position.double[]
getCoordinate()
Returns a sequence of numbers that hold the coordinate of this position in its reference system.CoordinateReferenceSystem
getCoordinateReferenceSystem()
Returns the coordinate reference system in which the coordinate is given.int
getDimension()
The length of coordinate sequence (the number of entries).double
getOrdinate(int dimension)
Returns the coordinate at the specified dimension.int
hashCode()
Returns a hash value for this coordinate tuple.void
setCoordinateReferenceSystem(CoordinateReferenceSystem crs)
Sets the coordinate reference system in which the coordinate is given.void
setLocation(DirectPosition position)
Sets this coordinate to the specified direct position.void
setOrdinate(int dimension, double value)
Sets the coordinate value along the specified dimension.String
toString()
Formats this position in the Well Known Text (WKT) format.-
Methods inherited from class AbstractDirectPosition
castOrCopy, equals, formatTo, getDirectPosition, normalize
-
Methods inherited from class FormattableObject
print, toString, toWKT
-
-
-
-
Constructor Detail
-
DirectPosition1D
public DirectPosition1D()
Constructs a position initialized to (0) with anull
coordinate reference system.
-
DirectPosition1D
public DirectPosition1D(CoordinateReferenceSystem crs)
Constructs a position with the specified coordinate reference system.- Parameters:
crs
- the coordinate reference system.
-
DirectPosition1D
public DirectPosition1D(double coordinate)
Constructs a 1D position from the specified coordinate.- Parameters:
coordinate
- the coordinate value.
-
DirectPosition1D
public DirectPosition1D(CharSequence wkt) throws IllegalArgumentException
Constructs a position initialized to the values parsed from the given string in Well Known Text (WKT) format. The given string is typically aPOINT
element like below:POINT(6)
- Parameters:
wkt
- thePOINT
or other kind of element to parse.- Throws:
IllegalArgumentException
- if the given string can not be parsed.MismatchedDimensionException
- if the given point is not one-dimensional.- See Also:
toString()
,CoordinateFormat
-
-
Method Detail
-
getDimension
public final int getDimension()
The length of coordinate sequence (the number of entries). This is always 1 forDirectPosition1D
objects.- Specified by:
getDimension
in interfaceDirectPosition
- Returns:
- the dimensionality of this position.
-
getCoordinateReferenceSystem
public final CoordinateReferenceSystem getCoordinateReferenceSystem()
Returns the coordinate reference system in which the coordinate is given. May benull
if this particularDirectPosition
is included in a larger object with such a reference to a CRS.- Specified by:
getCoordinateReferenceSystem
in interfaceDirectPosition
- Returns:
- the coordinate reference system, or
null
.
-
setCoordinateReferenceSystem
public void setCoordinateReferenceSystem(CoordinateReferenceSystem crs)
Sets the coordinate reference system in which the coordinate is given.- Parameters:
crs
- the new coordinate reference system, ornull
.
-
getCoordinate
public final double[] getCoordinate()
Returns a sequence of numbers that hold the coordinate of this position in its reference system.API note: This method is final for ensuring consistency with thecoordinate
field, which is public.- Specified by:
getCoordinate
in interfaceDirectPosition
- Overrides:
getCoordinate
in classAbstractDirectPosition
- Returns:
- the coordinates.
-
getOrdinate
public final double getOrdinate(int dimension) throws IndexOutOfBoundsException
Returns the coordinate at the specified dimension.API note: This method is final for ensuring consistency with thecoordinate
field, which is public.- Specified by:
getOrdinate
in interfaceDirectPosition
- Parameters:
dimension
- the dimension, which must be 0.- Returns:
- the
coordinate
. - Throws:
IndexOutOfBoundsException
- if the specified dimension is out of bounds.
-
setOrdinate
public void setOrdinate(int dimension, double value) throws IndexOutOfBoundsException
Sets the coordinate value along the specified dimension.- Specified by:
setOrdinate
in interfaceDirectPosition
- Parameters:
dimension
- the dimension, which must be 0.value
- the coordinate value.- Throws:
IndexOutOfBoundsException
- if the specified dimension is out of bounds.
-
setLocation
public void setLocation(DirectPosition position) throws MismatchedDimensionException
Sets this coordinate to the specified direct position. If the specified position contains a coordinate reference system (CRS), then the CRS for this position will be set to the CRS of the specified position.- Overrides:
setLocation
in classAbstractDirectPosition
- Parameters:
position
- the new position for this point.- Throws:
MismatchedDimensionException
- if this point doesn't have the expected dimension.
-
toString
public String toString()
Formats this position in the Well Known Text (WKT) format. The output is like below:
The string returned by this method can be parsed by thePOINT(coordinate)
DirectPosition1D
constructor.- Overrides:
toString
in classAbstractDirectPosition
- Returns:
- this position as a
POINT
in Well Known Text (WKT) format.
-
clone
public DirectPosition1D clone()
Returns a copy of this position.
-
hashCode
public int hashCode()
Returns a hash value for this coordinate tuple. This method returns a value compliant with the contract documented in theDirectPosition.hashCode()
javadoc. Consequently, it should be possible to mix differentDirectPosition
implementations in the same hash map.- Specified by:
hashCode
in interfaceDirectPosition
- Overrides:
hashCode
in classAbstractDirectPosition
- Returns:
- a hash code value for this position.
-
-