Package org.locationtech.jts.geom
Class Coordinate.DimensionalComparator
java.lang.Object
org.locationtech.jts.geom.Coordinate.DimensionalComparator
- All Implemented Interfaces:
Comparator<Coordinate>
- Enclosing class:
Coordinate
public static class Coordinate.DimensionalComparator
extends Object
implements Comparator<Coordinate>
Compares two
Coordinate
s, allowing for either a 2-dimensional
or 3-dimensional comparison, and handling NaN values correctly.-
Constructor Summary
ConstructorsConstructorDescriptionCreates a comparator for 2 dimensional coordinates.DimensionalComparator
(int dimensionsToTest) Creates a comparator for 2 or 3 dimensional coordinates, depending on the value provided. -
Method Summary
Modifier and TypeMethodDescriptionstatic int
compare
(double a, double b) Compare twodouble
s, allowing for NaN values.int
compare
(Coordinate c1, Coordinate c2) Compares twoCoordinate
s along to the number of dimensions specified.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Comparator
equals, reversed, thenComparing, thenComparing, thenComparing, thenComparingDouble, thenComparingInt, thenComparingLong
-
Constructor Details
-
DimensionalComparator
public DimensionalComparator()Creates a comparator for 2 dimensional coordinates. -
DimensionalComparator
public DimensionalComparator(int dimensionsToTest) Creates a comparator for 2 or 3 dimensional coordinates, depending on the value provided.- Parameters:
dimensionsToTest
- the number of dimensions to test
-
-
Method Details
-
compare
public static int compare(double a, double b) Compare twodouble
s, allowing for NaN values. NaN is treated as being less than any valid number.- Parameters:
a
- adouble
b
- adouble
- Returns:
- -1, 0, or 1 depending on whether a is less than, equal to or greater than b
-
compare
Compares twoCoordinate
s along to the number of dimensions specified.- Specified by:
compare
in interfaceComparator<Coordinate>
- Parameters:
c1
- aCoordinate
c2
- a {link Coordinate}- Returns:
- -1, 0, or 1 depending on whether o1 is less than, equal to, or greater than 02
-