public class HRPlusTreeUtils
extends java.lang.Object
Constructor and Description |
---|
HRPlusTreeUtils() |
Modifier and Type | Method and Description |
---|---|
protected static Envelope |
boundingBoxOf(java.util.List<HRPlusNode> nodes)
Create an envelope covering all the points in @param nodes.
|
protected static double |
getOverlap(java.util.List<HRPlusNode> firstGroup,
java.util.List<HRPlusNode> secondGroup)
Find the overlap between bounding boxes surrounding two groups of nodes.
|
protected static double |
getTotalAreaOfTwoRegions(java.util.List<HRPlusNode> firstGroup,
java.util.List<HRPlusNode> secondGroup)
Get total area of the envelopes covering two groups of nodes.
|
protected static double |
marginOf(Envelope envelope)
margin = perimeter
|
protected static java.util.List<HRPlusNode> |
maxXSort(java.util.List<HRPlusNode> nodes)
Sort a list of nodes by their maximum x coordinate
|
protected static java.util.List<HRPlusNode> |
maxYSort(java.util.List<HRPlusNode> nodes)
Sort a list of nodes by their maximum y coordinate.
|
protected static java.util.List<HRPlusNode> |
minXSort(java.util.List<HRPlusNode> nodes)
Sort a list of nodes by their minimum x coordinate.
|
protected static java.util.List<HRPlusNode> |
minYSort(java.util.List<HRPlusNode> nodes)
Sort a list of nodes by their minimum y coordinate.
|
protected static java.util.List<HRPlusNode> |
partitionByMinOverlap(java.util.List<HRPlusNode> minSort,
java.util.List<HRPlusNode> maxSort)
Take a list of nodes, sorted by position on a one-dimensional axis.
|
protected static double |
sumOfMargins(java.util.List<HRPlusNode> nodes)
Sum many perimeters.
|
protected static Envelope boundingBoxOf(java.util.List<HRPlusNode> nodes)
nodes
- protected static double getOverlap(java.util.List<HRPlusNode> firstGroup, java.util.List<HRPlusNode> secondGroup)
firstGroup
- secondGroup
- protected static double getTotalAreaOfTwoRegions(java.util.List<HRPlusNode> firstGroup, java.util.List<HRPlusNode> secondGroup)
firstGroup
- secondGroup
- protected static double marginOf(Envelope envelope)
envelope
- protected static double sumOfMargins(java.util.List<HRPlusNode> nodes)
nodes
- protected static java.util.List<HRPlusNode> partitionByMinOverlap(java.util.List<HRPlusNode> minSort, java.util.List<HRPlusNode> maxSort)
minSort
- nodes sorted by minimum position along some axismaxSort
- same nodes, sorted by maximum position along the same axis.protected static java.util.List<HRPlusNode> minXSort(java.util.List<HRPlusNode> nodes)
nodes
- protected static java.util.List<HRPlusNode> minYSort(java.util.List<HRPlusNode> nodes)
nodes
- protected static java.util.List<HRPlusNode> maxXSort(java.util.List<HRPlusNode> nodes)
nodes
- protected static java.util.List<HRPlusNode> maxYSort(java.util.List<HRPlusNode> nodes)
nodes
-