sealed trait VantagePointTree[A] extends Iterable[A]

Recursive, immutable Vantage Point tree Partitions metric spaces for efficient neighbour searches Key concept: split a point set at a node into an inner and an outer set which satisfy:

  • inner: all points are closer to the pivot/center than the radius
  • outer: all points are further away from the the pivot than radius

WARNING: the tree only works with a metric (positive, symmetric, triangle inequality)

Linear Supertypes
Iterable[A], IterableFactoryDefaults[A, Iterable], IterableOps[A, Iterable, Iterable[A]], IterableOnceOps[A, Iterable, Iterable[A]], IterableOnce[A], AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. VantagePointTree
  2. Iterable
  3. IterableFactoryDefaults
  4. IterableOps
  5. IterableOnceOps
  6. IterableOnce
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Abstract Value Members

  1. abstract def contains(point: A): Boolean

    return true of the tree contains the point

  2. abstract def findNN(point: A, candidates: CandidateSet[A]): Unit

    main implementation of neighbour searches

    main implementation of neighbour searches

    Attributes
    protected[utils]
  3. abstract def metric: Metric[A]

    metric of the space

Concrete Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ++[B >: A](suffix: IterableOnce[B]): Iterable[B]
    Definition Classes
    IterableOps
    Annotations
    @inline()
  4. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  5. final def addString(b: StringBuilder): StringBuilder
    Definition Classes
    IterableOnceOps
    Annotations
    @inline()
  6. final def addString(b: StringBuilder, sep: String): StringBuilder
    Definition Classes
    IterableOnceOps
    Annotations
    @inline()
  7. def addString(b: StringBuilder, start: String, sep: String, end: String): StringBuilder
    Definition Classes
    IterableOnceOps
  8. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  9. def className: String
    Attributes
    protected[this]
    Definition Classes
    Iterable
  10. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.CloneNotSupportedException]) @native()
  11. final def coll: VantagePointTree.this.type
    Attributes
    protected
    Definition Classes
    Iterable → IterableOps
  12. def collect[B](pf: PartialFunction[A, B]): Iterable[B]
    Definition Classes
    IterableOps → IterableOnceOps
  13. def collectFirst[B](pf: PartialFunction[A, B]): Option[B]
    Definition Classes
    IterableOnceOps
  14. def concat[B >: A](suffix: IterableOnce[B]): Iterable[B]
    Definition Classes
    IterableOps
  15. def copyToArray[B >: A](xs: Array[B], start: Int, len: Int): Int
    Definition Classes
    IterableOnceOps
  16. def copyToArray[B >: A](xs: Array[B], start: Int): Int
    Definition Classes
    IterableOnceOps
  17. def copyToArray[B >: A](xs: Array[B]): Int
    Definition Classes
    IterableOnceOps
  18. def corresponds[B](that: IterableOnce[B])(p: (A, B) => Boolean): Boolean
    Definition Classes
    IterableOnceOps
  19. def count(p: (A) => Boolean): Int
    Definition Classes
    IterableOnceOps
  20. def drop(n: Int): Iterable[A]
    Definition Classes
    IterableOps → IterableOnceOps
  21. def dropRight(n: Int): Iterable[A]
    Definition Classes
    IterableOps
  22. def dropWhile(p: (A) => Boolean): Iterable[A]
    Definition Classes
    IterableOps → IterableOnceOps
  23. def empty: Iterable[A]
    Definition Classes
    IterableFactoryDefaults → IterableOps
  24. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  25. def equals(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef → Any
  26. def exists(p: (A) => Boolean): Boolean
    Definition Classes
    IterableOnceOps
  27. def filter(pred: (A) => Boolean): Iterable[A]
    Definition Classes
    IterableOps → IterableOnceOps
  28. def filterNot(pred: (A) => Boolean): Iterable[A]
    Definition Classes
    IterableOps → IterableOnceOps
  29. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.Throwable])
  30. def find(p: (A) => Boolean): Option[A]
    Definition Classes
    IterableOnceOps
  31. def findClosestPoint(point: A): A

    find closest point in tree

  32. def findEpsilonNeighbours(point: A, maxDistance: Double): IndexedSeq[A]

    find all neighbours within an epsilon region around point

  33. def findKNearestNeighbours(point: A, k: Int): IndexedSeq[A]

    find k nearest neighbours

  34. def flatMap[B](f: (A) => IterableOnce[B]): Iterable[B]
    Definition Classes
    IterableOps → IterableOnceOps
  35. def flatten[B](implicit asIterable: (A) => IterableOnce[B]): Iterable[B]
    Definition Classes
    IterableOps → IterableOnceOps
  36. def fold[A1 >: A](z: A1)(op: (A1, A1) => A1): A1
    Definition Classes
    IterableOnceOps
  37. def foldLeft[B](z: B)(op: (B, A) => B): B
    Definition Classes
    IterableOnceOps
  38. def foldRight[B](z: B)(op: (A, B) => B): B
    Definition Classes
    IterableOnceOps
  39. def forall(p: (A) => Boolean): Boolean
    Definition Classes
    IterableOnceOps
  40. def foreach[U](f: (A) => U): Unit
    Definition Classes
    IterableOnceOps
  41. def fromSpecific(coll: IterableOnce[A]): Iterable[A]
    Attributes
    protected
    Definition Classes
    IterableFactoryDefaults → IterableOps
  42. final def getClass(): Class[_ <: AnyRef]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  43. def groupBy[K](f: (A) => K): Map[K, Iterable[A]]
    Definition Classes
    IterableOps
  44. def groupMap[K, B](key: (A) => K)(f: (A) => B): Map[K, Iterable[B]]
    Definition Classes
    IterableOps
  45. def groupMapReduce[K, B](key: (A) => K)(f: (A) => B)(reduce: (B, B) => B): Map[K, B]
    Definition Classes
    IterableOps
  46. def grouped(size: Int): Iterator[Iterable[A]]
    Definition Classes
    IterableOps
  47. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  48. def head: A
    Definition Classes
    IterableOps
  49. def headOption: Option[A]
    Definition Classes
    IterableOps
  50. def init: Iterable[A]
    Definition Classes
    IterableOps
  51. def inits: Iterator[Iterable[A]]
    Definition Classes
    IterableOps
  52. def isEmpty: Boolean
    Definition Classes
    IterableOnceOps
  53. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  54. def isTraversableAgain: Boolean
    Definition Classes
    IterableOps → IterableOnceOps
  55. def iterableFactory: IterableFactory[Iterable]
    Definition Classes
    Iterable → IterableOps
  56. def iterator: Iterator[A]
    Definition Classes
    VantagePointTree → IterableOnce
  57. def knownSize: Int
    Definition Classes
    IterableOnce
  58. def last: A
    Definition Classes
    IterableOps
  59. def lastOption: Option[A]
    Definition Classes
    IterableOps
  60. def lazyZip[B](that: Iterable[B]): LazyZip2[A, B, VantagePointTree.this.type]
    Definition Classes
    Iterable
  61. def map[B](f: (A) => B): Iterable[B]
    Definition Classes
    IterableOps → IterableOnceOps
  62. def max[B >: A](implicit ord: Ordering[B]): A
    Definition Classes
    IterableOnceOps
  63. def maxBy[B](f: (A) => B)(implicit cmp: Ordering[B]): A
    Definition Classes
    IterableOnceOps
  64. def maxByOption[B](f: (A) => B)(implicit cmp: Ordering[B]): Option[A]
    Definition Classes
    IterableOnceOps
  65. def maxOption[B >: A](implicit ord: Ordering[B]): Option[A]
    Definition Classes
    IterableOnceOps
  66. def min[B >: A](implicit ord: Ordering[B]): A
    Definition Classes
    IterableOnceOps
  67. def minBy[B](f: (A) => B)(implicit cmp: Ordering[B]): A
    Definition Classes
    IterableOnceOps
  68. def minByOption[B](f: (A) => B)(implicit cmp: Ordering[B]): Option[A]
    Definition Classes
    IterableOnceOps
  69. def minOption[B >: A](implicit ord: Ordering[B]): Option[A]
    Definition Classes
    IterableOnceOps
  70. final def mkString: String
    Definition Classes
    IterableOnceOps
    Annotations
    @inline()
  71. final def mkString(sep: String): String
    Definition Classes
    IterableOnceOps
    Annotations
    @inline()
  72. final def mkString(start: String, sep: String, end: String): String
    Definition Classes
    IterableOnceOps
  73. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  74. def newSpecificBuilder: Builder[A, Iterable[A]]
    Attributes
    protected
    Definition Classes
    IterableFactoryDefaults → IterableOps
  75. def nonEmpty: Boolean
    Definition Classes
    IterableOnceOps
    Annotations
    @deprecatedOverriding("nonEmpty is defined as !isEmpty; override isEmpty instead", "2.13.0")
  76. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  77. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  78. def partition(p: (A) => Boolean): (Iterable[A], Iterable[A])
    Definition Classes
    IterableOps
  79. def partitionMap[A1, A2](f: (A) => Either[A1, A2]): (Iterable[A1], Iterable[A2])
    Definition Classes
    IterableOps
  80. def product[B >: A](implicit num: Numeric[B]): B
    Definition Classes
    IterableOnceOps
  81. def reduce[B >: A](op: (B, B) => B): B
    Definition Classes
    IterableOnceOps
  82. def reduceLeft[B >: A](op: (B, A) => B): B
    Definition Classes
    IterableOnceOps
  83. def reduceLeftOption[B >: A](op: (B, A) => B): Option[B]
    Definition Classes
    IterableOnceOps
  84. def reduceOption[B >: A](op: (B, B) => B): Option[B]
    Definition Classes
    IterableOnceOps
  85. def reduceRight[B >: A](op: (A, B) => B): B
    Definition Classes
    IterableOnceOps
  86. def reduceRightOption[B >: A](op: (A, B) => B): Option[B]
    Definition Classes
    IterableOnceOps
  87. def reversed: Iterable[A]
    Attributes
    protected
    Definition Classes
    IterableOnceOps
  88. def scan[B >: A](z: B)(op: (B, B) => B): Iterable[B]
    Definition Classes
    IterableOps
  89. def scanLeft[B](z: B)(op: (B, A) => B): Iterable[B]
    Definition Classes
    IterableOps → IterableOnceOps
  90. def scanRight[B](z: B)(op: (A, B) => B): Iterable[B]
    Definition Classes
    IterableOps
  91. def size: Int
    Definition Classes
    IterableOnceOps
  92. def sizeCompare(that: Iterable[_]): Int
    Definition Classes
    IterableOps
  93. def sizeCompare(otherSize: Int): Int
    Definition Classes
    IterableOps
  94. final def sizeIs: SizeCompareOps
    Definition Classes
    IterableOps
    Annotations
    @inline()
  95. def slice(from: Int, until: Int): Iterable[A]
    Definition Classes
    IterableOps → IterableOnceOps
  96. def sliding(size: Int, step: Int): Iterator[Iterable[A]]
    Definition Classes
    IterableOps
  97. def sliding(size: Int): Iterator[Iterable[A]]
    Definition Classes
    IterableOps
  98. def span(p: (A) => Boolean): (Iterable[A], Iterable[A])
    Definition Classes
    IterableOps → IterableOnceOps
  99. def splitAt(n: Int): (Iterable[A], Iterable[A])
    Definition Classes
    IterableOps → IterableOnceOps
  100. def stepper[S <: Stepper[_]](implicit shape: StepperShape[A, S]): S
    Definition Classes
    IterableOnce
  101. def stringPrefix: String
    Attributes
    protected[this]
    Definition Classes
    Iterable
    Annotations
    @deprecatedOverriding("Override className instead", "2.13.0")
  102. def sum[B >: A](implicit num: Numeric[B]): B
    Definition Classes
    IterableOnceOps
  103. final def synchronized[T0](arg0: => T0): T0
    Definition Classes
    AnyRef
  104. def tail: Iterable[A]
    Definition Classes
    IterableOps
  105. def tails: Iterator[Iterable[A]]
    Definition Classes
    IterableOps
  106. def take(n: Int): Iterable[A]
    Definition Classes
    IterableOps → IterableOnceOps
  107. def takeRight(n: Int): Iterable[A]
    Definition Classes
    IterableOps
  108. def takeWhile(p: (A) => Boolean): Iterable[A]
    Definition Classes
    IterableOps → IterableOnceOps
  109. def tapEach[U](f: (A) => U): Iterable[A]
    Definition Classes
    IterableOps → IterableOnceOps
  110. def to[C1](factory: Factory[A, C1]): C1
    Definition Classes
    IterableOnceOps
  111. def toArray[B >: A](implicit arg0: ClassTag[B]): Array[B]
    Definition Classes
    IterableOnceOps
  112. final def toBuffer[B >: A]: Buffer[B]
    Definition Classes
    IterableOnceOps
    Annotations
    @inline()
  113. def toIndexedSeq: IndexedSeq[A]
    Definition Classes
    IterableOnceOps
  114. final def toIterable: VantagePointTree.this.type
    Definition Classes
    Iterable → IterableOps
  115. def toList: List[A]
    Definition Classes
    IterableOnceOps
  116. def toMap[K, V](implicit ev: <:<[A, (K, V)]): Map[K, V]
    Definition Classes
    IterableOnceOps
  117. def toSeq: Seq[A]
    Definition Classes
    IterableOnceOps
  118. def toSet[B >: A]: Set[B]
    Definition Classes
    IterableOnceOps
  119. def toString(): String
    Definition Classes
    Iterable → AnyRef → Any
  120. def toVector: Vector[A]
    Definition Classes
    IterableOnceOps
  121. def transpose[B](implicit asIterable: (A) => Iterable[B]): Iterable[Iterable[B]]
    Definition Classes
    IterableOps
  122. def unzip[A1, A2](implicit asPair: (A) => (A1, A2)): (Iterable[A1], Iterable[A2])
    Definition Classes
    IterableOps
  123. def unzip3[A1, A2, A3](implicit asTriple: (A) => (A1, A2, A3)): (Iterable[A1], Iterable[A2], Iterable[A3])
    Definition Classes
    IterableOps
  124. def view: View[A]
    Definition Classes
    IterableOps
  125. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  126. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException])
  127. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws(classOf[java.lang.InterruptedException]) @native()
  128. def withFilter(p: (A) => Boolean): WithFilter[A, Iterable]
    Definition Classes
    IterableOps
  129. def zip[B](that: IterableOnce[B]): Iterable[(A, B)]
    Definition Classes
    IterableOps
  130. def zipAll[A1 >: A, B](that: Iterable[B], thisElem: A1, thatElem: B): Iterable[(A1, B)]
    Definition Classes
    IterableOps
  131. def zipWithIndex: Iterable[(A, Int)]
    Definition Classes
    IterableOps → IterableOnceOps

Deprecated Value Members

  1. def ++:[B >: A](that: IterableOnce[B]): Iterable[B]
    Definition Classes
    IterableOps
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use ++ instead of ++: for collections of type Iterable

  2. final def /:[B](z: B)(op: (B, A) => B): B
    Definition Classes
    IterableOnceOps
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.13.0) Use foldLeft instead of /:

  3. final def :\[B](z: B)(op: (A, B) => B): B
    Definition Classes
    IterableOnceOps
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.13.0) Use foldRight instead of :\

  4. def aggregate[B](z: => B)(seqop: (B, A) => B, combop: (B, B) => B): B
    Definition Classes
    IterableOnceOps
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) aggregate is not relevant for sequential collections. Use foldLeft(z)(seqop) instead.

  5. def companion: IterableFactory[Iterable]
    Definition Classes
    IterableOps
    Annotations
    @deprecated @deprecatedOverriding("Use iterableFactory instead", "2.13.0") @inline()
    Deprecated

    (Since version 2.13.0) Use iterableFactory instead

  6. final def copyToBuffer[B >: A](dest: Buffer[B]): Unit
    Definition Classes
    IterableOnceOps
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.13.0) Use dest ++= coll instead

  7. def hasDefiniteSize: Boolean
    Definition Classes
    IterableOnceOps
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Check .knownSize instead of .hasDefiniteSize for more actionable information (see scaladoc for details)

  8. final def repr: Iterable[A]
    Definition Classes
    IterableOps
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use coll instead of repr in a collection implementation, use the collection value itself from the outside

  9. def seq: VantagePointTree.this.type
    Definition Classes
    Iterable
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Iterable.seq always returns the iterable itself

  10. final def toIterator: Iterator[A]
    Definition Classes
    IterableOnceOps
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.13.0) Use .iterator instead of .toIterator

  11. final def toStream: Stream[A]
    Definition Classes
    IterableOnceOps
    Annotations
    @deprecated @inline()
    Deprecated

    (Since version 2.13.0) Use .to(LazyList) instead of .toStream

  12. final def toTraversable: Traversable[A]
    Definition Classes
    IterableOps
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use toIterable instead

  13. def view(from: Int, until: Int): View[A]
    Definition Classes
    IterableOps
    Annotations
    @deprecated
    Deprecated

    (Since version 2.13.0) Use .view.slice(from, until) instead of .view(from, until)

Inherited from Iterable[A]

Inherited from IterableFactoryDefaults[A, Iterable]

Inherited from IterableOps[A, Iterable, Iterable[A]]

Inherited from IterableOnceOps[A, Iterable, Iterable[A]]

Inherited from IterableOnce[A]

Inherited from AnyRef

Inherited from Any

Ungrouped