Spatial C++ Library Icon

Spatial C++ Library

Library of generic, k-d tree multi-dimensional containers

Add a Review
5 Downloads (This Week)
Last Update:
Download spatial_2.1.6.zip
Browse All Files
BSD Windows Mac Linux

Description

Spatial is a generic header-only C++ library providing multi-dimensional in-memory containers, iterators and functionals. Spatial is a general purpose library with good overall performance thanks to its self-balancing k-d tree containers. Spatial makes it easy to search for nearest neighbors, orthogonal
ranges, or perform ordering of objects in any number of dimensions.

Spatial's design borrows heavily from the STL, and strives to follow it's elegant interface; therefore Spatial's containers, iterators and functionals integrate well with the STL. Additionally, Spatial's self-balancing kd-tree based containers, capable of object insertion and removal in fractional amortized time, prevent worst-case computational time on most operations.

Spatial was created with tracking analysis and real-time positioning in mind, but its good overall performance and its set of algorithms should make it as simple for anyone to do spatial analysis in their application.

Spatial C++ Library Web Site

Features

  • Generic implementation of kd-trees in C++
  • API design is similar to the STL
  • Aim at good overall performance with self-balancing containers
  • Sort objects along several dimensions that may be of different types
  • static (compile-time) or dynamic (run-time) determination of the number of dimensions
  • Insertions and removals in fractional amortized time
  • Iteration over an orthogonal range
  • Iteration over n neighbors, from nearest to furthest
  • Iteration over a single dimension, independantly from others

Update Notifications





Write a Review

User Reviews

Be the first to post a review of Spatial C++ Library!

Additional Project Details

Languages

English

Intended Audience

Developers

Programming Language

C++

Registered

2011-03-07

Icons must be PNG, GIF, or JPEG and less than 1 MiB in size. They will be displayed as 48x48 images.