trait DistanceMeasure[M, D <: Space[D]] 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
- All
Abstract Value Members
- abstract def compareMeasure(a: M, b: M): Int
-
abstract
def
distance(a: D.PointLike, b: D.PointLike): 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: D.PointLike, b: D.HyperCube): 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 whetherais contained inbor not. -
abstract
def
maxValue: M
A value which will never be exceeded by the measure.
-
abstract
def
minDistance(a: D.PointLike, b: D.HyperCube): 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, ifalies outside ofb, or zero, ifalies 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[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
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()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )