Crate rstar

Source
Expand description

An n-dimensional r*-tree implementation.

This crate implements a flexible, n-dimensional r-tree implementation with the r* (r star) insertion strategy.

§R-Tree

An r-tree is a data structure containing spatial data and is optimized for nearest neighbor search. Spatial data refers to an object that has the notion of a position and extent, for example points, lines and rectangles in any dimension.

§Further documentation

The crate’s main data structure and documentation is the RTree struct.

Also, the pre-defined primitives like lines and rectangles contained in the primitives module may be of interest for a quick start.

§(De)Serialization

Enable the serde feature for Serde support.

Modules§

iterators
Iterator types
primitives
Contains primitives ready for insertion into an r-tree.

Structs§

AABB
An n-dimensional axis aligned bounding box (AABB).
DefaultParams
The default parameters used when creating an r-tree without specific parameters.
ParentNode
Represents an internal parent node.
RTree
An n-dimensional r-tree data structure.

Enums§

RStarInsertionStrategy
Inserts points according to the r-star heuristic.
RTreeNode
An internal tree node.

Traits§

Envelope
An envelope type that encompasses some child nodes.
InsertionStrategy
Defines how points are inserted into an r-tree.
Point
Defines a point type that is compatible with rstar.
PointDistance
Defines objects which can calculate their minimal distance to a point.
RTreeNum
Defines a number type that is compatible with rstar.
RTreeObject
An object that can be inserted into an r-tree.
RTreeParams
Defines static parameters for an r-tree.
SelectionFunction
Advanced trait to iterate through an r-tree. Usually it should not be required to be implemented.