Package org.locationtech.jts.geom
Class CoordinateXYM
java.lang.Object
org.locationtech.jts.geom.Coordinate
org.locationtech.jts.geom.CoordinateXYM
- All Implemented Interfaces:
Serializable
,Cloneable
,Comparable<Coordinate>
Coordinate subclass supporting XYM ordinates.
This data object is suitable for use with coordinate sequences with dimension = 3 and measures = 1.
The Coordinate.z
field is visible, but intended to be ignored.
- Since:
- 1.16
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.locationtech.jts.geom.Coordinate
Coordinate.DimensionalComparator
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected double
The m-measure.static final int
Standard ordinate index value for M in XYM sequences.static final int
Standard ordinate index value for Xstatic final int
Standard ordinate index value for Ystatic final int
CoordinateXYM does not support Z values.Fields inherited from class org.locationtech.jts.geom.Coordinate
NULL_ORDINATE, x, y, z
-
Constructor Summary
ConstructorsConstructorDescriptionDefault constructorCoordinateXYM
(double x, double y, double m) Constructs a CoordinateXYM instance with the given ordinates and measure.CoordinateXYM
(Coordinate coord) Constructs a CoordinateXYM instance with the x and y ordinates of the given Coordinate.CoordinateXYM
(CoordinateXYM coord) Constructs a CoordinateXY instance with the x and y ordinates of the given CoordinateXYM. -
Method Summary
Modifier and TypeMethodDescriptioncopy()
Creates a copy of this CoordinateXYM.create()
Create a new Coordinate of the same type as this Coordinate, but with no values.double
getM()
The m-measure, if available.double
getOrdinate
(int ordinateIndex) Gets the ordinate value for the given index.double
getZ()
The z-ordinate is not supportedvoid
setCoordinate
(Coordinate other) Sets thisCoordinate
s (x,y,z) values to that ofother
.void
setM
(double m) Sets the measure value, if supported.void
setOrdinate
(int ordinateIndex, double value) Sets the ordinate for the given index to a given value.void
setZ
(double z) The z-ordinate is not supportedtoString()
Returns aString
of the form (x,y,z) .
-
Field Details
-
X
public static final int XStandard ordinate index value for X- See Also:
-
Y
public static final int YStandard ordinate index value for Y- See Also:
-
Z
public static final int ZCoordinateXYM does not support Z values.- See Also:
-
M
public static final int MStandard ordinate index value for M in XYM sequences.This constant assumes XYM coordinate sequence definition. Check this assumption using
CoordinateSequence.getDimension()
andCoordinateSequence.getMeasures()
before use.- See Also:
-
m
protected double mThe m-measure.
-
-
Constructor Details
-
CoordinateXYM
public CoordinateXYM()Default constructor -
CoordinateXYM
public CoordinateXYM(double x, double y, double m) Constructs a CoordinateXYM instance with the given ordinates and measure.- Parameters:
x
- the X ordinatey
- the Y ordinatem
- the M measure value
-
CoordinateXYM
Constructs a CoordinateXYM instance with the x and y ordinates of the given Coordinate.- Parameters:
coord
- the coordinate providing the ordinates
-
CoordinateXYM
Constructs a CoordinateXY instance with the x and y ordinates of the given CoordinateXYM.- Parameters:
coord
- the coordinate providing the ordinates
-
-
Method Details
-
copy
Creates a copy of this CoordinateXYM.- Overrides:
copy
in classCoordinate
- Returns:
- a copy of this CoordinateXYM
-
create
Create a new Coordinate of the same type as this Coordinate, but with no values.- Overrides:
create
in classCoordinate
- Returns:
- a new Coordinate
-
getM
public double getM()The m-measure, if available.- Overrides:
getM
in classCoordinate
- Returns:
- the value of the measure, or NaN
-
setM
public void setM(double m) Description copied from class:Coordinate
Sets the measure value, if supported.- Overrides:
setM
in classCoordinate
- Parameters:
m
- the value to set as M
-
getZ
public double getZ()The z-ordinate is not supported- Overrides:
getZ
in classCoordinate
- Returns:
- the value of the Z ordinate, or NaN
-
setZ
public void setZ(double z) The z-ordinate is not supported- Overrides:
setZ
in classCoordinate
- Parameters:
z
- the value to set as Z
-
setCoordinate
Description copied from class:Coordinate
Sets thisCoordinate
s (x,y,z) values to that ofother
.- Overrides:
setCoordinate
in classCoordinate
- Parameters:
other
- theCoordinate
to copy
-
getOrdinate
public double getOrdinate(int ordinateIndex) Description copied from class:Coordinate
Gets the ordinate value for the given index. The base implementation supports values for the index areCoordinate.X
,Coordinate.Y
, andCoordinate.Z
.- Overrides:
getOrdinate
in classCoordinate
- Parameters:
ordinateIndex
- the ordinate index- Returns:
- the value of the ordinate
-
setOrdinate
public void setOrdinate(int ordinateIndex, double value) Description copied from class:Coordinate
Sets the ordinate for the given index to a given value. The base implementation supported values for the index areCoordinate.X
,Coordinate.Y
, andCoordinate.Z
.- Overrides:
setOrdinate
in classCoordinate
- Parameters:
ordinateIndex
- the ordinate indexvalue
- the value to set
-
toString
Description copied from class:Coordinate
Returns aString
of the form (x,y,z) .- Overrides:
toString
in classCoordinate
- Returns:
- a
String
of the form (x,y,z)
-