class XZ3SFC extends AnyRef
Extended Z-order curve implementation used for efficiently storing polygons.
Based on 'XZ-Ordering: A Space-Filling Curve for Objects with Spatial Extension' by Christian Böhm, Gerald Klump and Hans-Peter Kriegel, expanded to 3 dimensions
- Alphabetic
- By Inheritance
- XZ3SFC
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
XZ3SFC(g: Short, xBounds: (Double, Double), yBounds: (Double, Double), zBounds: (Double, Double))
- g
resolution level of the curve - i.e. how many times the space will be recursively split into eighths
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @HotSpotIntrinsicCandidate()
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val g: Short
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
index(xmin: Double, ymin: Double, zmin: Double, xmax: Double, ymax: Double, zmax: Double, lenient: Boolean = false): Long
Index a polygon by it's bounding box
Index a polygon by it's bounding box
- xmin
min x value in xBounds
- ymin
min y value in yBounds
- zmin
min z value in zBounds
- xmax
max x value in xBounds, must be >= xmin
- ymax
max y value in yBounds, must be >= ymin
- zmax
max z value in zBounds, must be >= tmin
- lenient
standardize boundaries to valid values, or raise an exception
- returns
z value for the bounding box
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
normalize(xmin: Double, ymin: Double, zmin: Double, xmax: Double, ymax: Double, zmax: Double, lenient: Boolean): (Double, Double, Double, Double, Double, Double)
Normalize user space values to [0,1]
Normalize user space values to [0,1]
- xmin
min x value in user space
- ymin
min y value in user space
- zmin
min z value in user space
- xmax
max x value in user space, must be >= xmin
- ymax
max y value in user space, must be >= ymin
- zmax
max z value in user space, must be >= zmin
- lenient
standardize boundaries to valid values, or raise an exception
- Attributes
- protected
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
def
ranges(queries: Seq[(Double, Double, Double, Double, Double, Double)], maxRanges: Option[Int] = None): Seq[IndexRange]
Determine XZ-curve ranges that will cover a given query window
Determine XZ-curve ranges that will cover a given query window
- queries
a sequence of OR'd windows to cover. Each window is in the form (xmin, ymin, zmin, xmax, ymax, zmax) where all values are in user space
- maxRanges
a rough upper limit on the number of ranges to generate
-
def
ranges(xmin: Double, ymin: Double, zmin: Double, xmax: Double, ymax: Double, zmax: Double, maxRanges: Option[Int]): Seq[IndexRange]
Determine XZ-curve ranges that will cover a given query window
Determine XZ-curve ranges that will cover a given query window
- xmin
min x value in user space
- ymin
min y value in user space
- zmin
min z value in user space
- xmax
max x value in user space, must be >= xmin
- ymax
max y value in user space, must be >= ymin
- zmax
max z value in user space, must be >= zmin
- maxRanges
a rough upper limit on the number of ranges to generate
-
def
ranges(xmin: Double, ymin: Double, zmin: Double, xmax: Double, ymax: Double, zmax: Double): Seq[IndexRange]
Determine XZ-curve ranges that will cover a given query window
Determine XZ-curve ranges that will cover a given query window
- xmin
min x value in user space
- ymin
min y value in user space
- zmin
min z value in user space
- xmax
max x value in user space, must be >= xmin
- ymax
max y value in user space, must be >= ymin
- zmax
max z value in user space, must be >= zmin
-
def
ranges(query: (Double, Double, Double, Double, Double, Double), maxRanges: Option[Int]): Seq[IndexRange]
Determine XZ-curve ranges that will cover a given query window
Determine XZ-curve ranges that will cover a given query window
- query
a window to cover in the form (xmin, ymin, zmin, xmax, ymax, zmax) where all values are in user space
- maxRanges
a rough upper limit on the number of ranges to generate
-
def
ranges(query: (Double, Double, Double, Double, Double, Double)): Seq[IndexRange]
Determine XZ-curve ranges that will cover a given query window
Determine XZ-curve ranges that will cover a given query window
- query
a window to cover in the form (xmin, ymin, zmin, xmax, ymax, zmax) where all values are in user space
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
- val xBounds: (Double, Double)
- val yBounds: (Double, Double)
- val zBounds: (Double, Double)
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated
- Deprecated