
@Reference(authors="D. Hilbert", title="\u00dcber die stetige Abbildung einer Linie auf ein Fl\u00e4chenst\u00fcck", booktitle="Mathematische Annalen, 38(3)") public class HilbertSpatialSorter extends AbstractSpatialSorter
D. Hilbert
Über die stetige Abbildung einer Linie auf ein Flächenstück
In: Mathematische Annalen, 38(3)
| Modifier and Type | Class and Description |
|---|---|
private static class |
HilbertSpatialSorter.HilbertRef<T extends SpatialComparable>
Object used in spatial sorting, combining the spatial object and the object
ID.
|
| Constructor and Description |
|---|
HilbertSpatialSorter()
Constructor.
|
| Modifier and Type | Method and Description |
|---|---|
static long[] |
coordinatesToHilbert(byte[] coords,
int bitsperdim,
int offset)
Interleave one byte per dimension (using the "bitsperdim" highest bits) to
a hilbert address.
|
static long[] |
coordinatesToHilbert(int[] coords,
int bitsperdim,
int offset)
Interleave one int per dimension (using the "bitsperdim" highest bits) to a
hilbert address.
|
static long[] |
coordinatesToHilbert(long[] coords,
int bitsperdim,
int offset)
Interleave one long per dimension (using the "bitsperdim" highest bits) to
a hilbert address.
|
static long[] |
coordinatesToHilbert(short[] coords,
int bitsperdim,
int offset)
Interleave one short per dimension (using the "bitsperdim" highest bits) to
a hilbert address.
|
static long[] |
interleaveBits(byte[] coords,
int iter)
Select the "iter" highest bit from each dimension.
|
static long[] |
interleaveBits(int[] coords,
int iter)
Select the "iter" highest bit from each dimension.
|
static long[] |
interleaveBits(long[] coords,
int iter)
Select the "iter" highest bit from each dimension.
|
static long[] |
interleaveBits(short[] coords,
int iter)
Select the "iter" highest bit from each dimension.
|
<T extends SpatialComparable> |
sort(List<T> objs,
int start,
int end,
double[] minmax,
int[] dims)
Sort part of the list (start to end).
|
computeMinMax, pivotizeList1D, sortpublic <T extends SpatialComparable> void sort(List<T> objs, int start, int end, double[] minmax, int[] dims)
SpatialSorterT - actual type we sortobjs - the spatial objects to be sortedstart - First index to sort (e.g. 0)end - End of range (e.g. site())minmax - Array with dim pairs of (min, max) of value rangesdims - Dimensions to sort by, for indexing vectors and minmax.public static long[] coordinatesToHilbert(long[] coords,
int bitsperdim,
int offset)
coords - Original coordinatesbitsperdim - Number of bits to use.offset - offsetpublic static long[] coordinatesToHilbert(int[] coords,
int bitsperdim,
int offset)
coords - Original coordinatesbitsperdim - Number of bits to use.offset - offsetpublic static long[] coordinatesToHilbert(short[] coords,
int bitsperdim,
int offset)
coords - Original coordinatesbitsperdim - Number of bits to use.offset - offsetpublic static long[] coordinatesToHilbert(byte[] coords,
int bitsperdim,
int offset)
coords - Original coordinatesbitsperdim - Number of bits to use.offset - offsetpublic static long[] interleaveBits(long[] coords,
int iter)
coords - Input coordinatesiter - Bit position (from highest position)public static long[] interleaveBits(int[] coords,
int iter)
coords - Input coordinatesiter - Bit position (from highest position)public static long[] interleaveBits(short[] coords,
int iter)
coords - Input coordinatesiter - Bit position (from highest position)public static long[] interleaveBits(byte[] coords,
int iter)
coords - Input coordinatesiter - Bit position (from highest position)