Home > rubyquadtree

rubyquadtree

Rubyquadtree is a project mainly written in Ruby, it's free.

Experimenting with ruby to write a quad-tree accelerator.

Contained within is a lightweight quadtree implementation. It was originally intended io improve performance with a ruby-gnome app but also works standalone.

Usage:

QuadTreeAccelerator is the most interesting class. Given a set of points, it'll partition the points in a quad-tree,ie,

qball = QuadTreeAccelerator.new(myObjectArray)

Atm, only point-like objects are supported :/ So the objects must respond to x, y, z and id messages (see UniquePoint3). For example, in IRB:

require 'quad_tree_accelerator' ps = (1..100).map{|x| UniquePoint3.new(rand(1000),rand(1000),rand(1000))};nil qball = QuadTreeAccelerator.new(ps);nil puts qball

The accelerator includes methods for manipulating the tree contents, iterating over points/nodes and queries.

Tests are included and run via run_tests.rb

daniel.g

Previous:PetraTest