Class: KdTree

Inherits:
Object
  • Object
show all
Defined in:
lib/kd_tree.rb

Defined Under Namespace

Classes: Node

Instance Method Summary collapse

Constructor Details

#initialize(points) ⇒ KdTree

Returns a new instance of KdTree.



4
5
6
7
# File 'lib/kd_tree.rb', line 4

def initialize(points)
  @root = build_tree(points)
  @nearest = []
end

Instance Method Details

#find_by_id(id) ⇒ Object



14
15
16
# File 'lib/kd_tree.rb', line 14

def find_by_id(id)
  return find_by_id_recursive(@root, id)
end

#find_nearest(target, k_nearest) ⇒ Object



9
10
11
12
# File 'lib/kd_tree.rb', line 9

def find_nearest(target, k_nearest)
  @nearest = []
  nearest(@root, target, k_nearest, 0)
end