com.vividsolutions.jts.geom
public class Coordinate extends java.lang.Object implements java.lang.Comparable, java.lang.Cloneable, java.io.Serializable
Point, which is a subclass of Geometry.
Unlike objects of type Point (which contain additional
information such as an envelope, a precision model, and spatial reference
system information), a Coordinate only contains ordinate values
and accessor methods.
Coordinates are two-dimensional points, with an additional Z-ordinate.
JTS does not support any operations on the Z-ordinate except the basic accessor functions.
If an Z-ordinate value is not specified or not defined,
constructed coordinates have a Z-ordinate of NaN
(which is also the value of NULL_ORDINATE).
The standard comparison functions ignore the Z-ordinate.
| Modifier and Type | Class and Description |
|---|---|
static class |
Coordinate.DimensionalComparator
Compares two
Coordinates, allowing for either a 2-dimensional
or 3-dimensional comparison, and handling NaN values correctly. |
| Modifier and Type | Field and Description |
|---|---|
static double |
NULL_ORDINATE
The value used to indicate a null or missing ordinate value.
|
double |
x
The x-coordinate.
|
double |
y
The y-coordinate.
|
double |
z
The z-coordinate.
|
| Constructor and Description |
|---|
Coordinate()
Constructs a
Coordinate at (0,0,NaN). |
Coordinate(Coordinate c)
Constructs a
Coordinate having the same (x,y,z) values as
other. |
Coordinate(double x,
double y)
Constructs a
Coordinate at (x,y,NaN). |
Coordinate(double x,
double y,
double z)
Constructs a
Coordinate at (x,y,z). |
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
clone() |
int |
compareTo(java.lang.Object o)
Compares this
Coordinate with the specified Coordinate for order. |
double |
distance(Coordinate p)
Computes the 2-dimensional Euclidean distance to another location.
|
boolean |
equals(java.lang.Object other)
Returns
true if other has the same values for
the x and y ordinates. |
boolean |
equals2D(Coordinate other)
Returns whether the planar projections of the two
Coordinates
are equal. |
boolean |
equals3D(Coordinate other)
Returns
true if other has the same values for x,
y and z. |
int |
hashCode()
Gets a hashcode for this coordinate.
|
static int |
hashCode(double x)
Computes a hash code for a double value, using the algorithm from
Joshua Bloch's book Effective Java"
|
void |
setCoordinate(Coordinate other)
Sets this
Coordinates (x,y,z) values to that of other. |
java.lang.String |
toString()
Returns a
String of the form (x,y,z) . |
public static final double NULL_ORDINATE
public double x
public double y
public double z
public Coordinate(double x,
double y,
double z)
Coordinate at (x,y,z).x - the x-valuey - the y-valuez - the z-valuepublic Coordinate()
Coordinate at (0,0,NaN).public Coordinate(Coordinate c)
Coordinate having the same (x,y,z) values as
other.c - the Coordinate to copy.public Coordinate(double x,
double y)
Coordinate at (x,y,NaN).x - the x-valuey - the y-valuepublic void setCoordinate(Coordinate other)
Coordinates (x,y,z) values to that of other.other - the Coordinate to copypublic boolean equals2D(Coordinate other)
Coordinates
are equal.other - a Coordinate with which to do the 2D comparison.true if the x- and y-coordinates are equal; the
z-coordinates do not have to be equal.public boolean equals(java.lang.Object other)
true if other has the same values for
the x and y ordinates.
Since Coordinates are 2.5D, this routine ignores the z value when making the comparison.equals in class java.lang.Objectother - a Coordinate with which to do the comparison.true if other is a Coordinate
with the same values for the x and y ordinates.public int compareTo(java.lang.Object o)
Coordinate with the specified Coordinate for order.
This method ignores the z value when making the comparison.
Returns:
compareTo in interface java.lang.Comparableo - the Coordinate with which this Coordinate
is being comparedCoordinate
is less than, equal to, or greater than the specified Coordinatepublic boolean equals3D(Coordinate other)
true if other has the same values for x,
y and z.other - a Coordinate with which to do the 3D comparison.true if other is a Coordinate
with the same values for x, y and z.public java.lang.String toString()
String of the form (x,y,z) .toString in class java.lang.ObjectString of the form (x,y,z)public java.lang.Object clone()
clone in class java.lang.Objectpublic double distance(Coordinate p)
p - a pointpublic int hashCode()
hashCode in class java.lang.Objectpublic static int hashCode(double x)