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).
- Default
Params - The default parameters used when creating an r-tree without specific parameters.
- Parent
Node - Represents an internal parent node.
- RTree
- An n-dimensional r-tree data structure.
Enums§
- RStar
Insertion Strategy - Inserts points according to the r-star heuristic.
- RTree
Node - An internal tree node.
Traits§
- Envelope
- An envelope type that encompasses some child nodes.
- Insertion
Strategy - Defines how points are inserted into an r-tree.
- Point
- Defines a point type that is compatible with rstar.
- Point
Distance - Defines objects which can calculate their minimal distance to a point.
- RTree
Num - Defines a number type that is compatible with rstar.
- RTree
Object - An object that can be inserted into an r-tree.
- RTree
Params - Defines static parameters for an r-tree.
- Selection
Function - Advanced trait to iterate through an r-tree. Usually it should not be required to be implemented.