trait DistanceMeasure[M, P, H] extends AnyRef
A DistanceMeasure
is used in nearest neighbour search,
in order to allow different ways points and children are
favoured or filtered during the search.
For simplicity and performance, the measures, although
they could be generalized as Ordered
, are given as
Long
values. Only comparisons are performed with
the results, therefore some optimizations may be made,
for example the euclidean
measure omits taking
the square root of the distances, while still preserving
the ordering between the possible results.
- Alphabetic
- By Inheritance
- DistanceMeasure
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Abstract Value Members
- abstract def compareMeasure(a: M, b: M): Int
- abstract def distance(a: P, b: P): M
Calculates the distance between two points.
Calculates the distance between two points.
- a
the input query point
- b
a point in the octree
- abstract def isMeasureGreater(a: M, b: M): Boolean
- abstract def isMeasureZero(m: M): Boolean
- abstract def maxDistance(a: P, b: H): M
Calculates the maximum distance between a point and any possible point of a given hyper-cube.
Calculates the maximum distance between a point and any possible point of a given hyper-cube. In the euclidean case, this is the distance to the hyper-cube
b
's corner that is furthest to the pointa
, no matter whethera
is contained inb
or not. - abstract def maxValue: M
A value which will never be exceeded by the measure.
- abstract def minDistance(a: P, b: H): M
Calculates the minimum distance between a point and any possible point of a given hyper-cube.
Calculates the minimum distance between a point and any possible point of a given hyper-cube. In the euclidean case, this is the distance to the hyper-cube
b
's corner that is closest to the pointa
, ifa
lies outside ofb
, or zero, ifa
lies withinb
. - abstract def newArray(size: Int): Array[M]
Concrete 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(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- 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(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated