[][src]Crate kd_tree

k-dimensional tree.

Example

let kdtree = kd_tree::KdTree::build_by_ordered_float(vec![
    [1.0, 2.0, 3.0],
    [3.0, 1.0, 2.0],
    [2.0, 3.0, 1.0],
]);
assert_eq!(kdtree.nearest(&[3.1, 0.9, 2.1]).unwrap().item, &[3.0, 1.0, 2.0]);

Structs

ItemAndDistance
KdIndexTreeN

This type refers a slice of items, [T], and contains kd-tree of indices to the items, KdTree<usize, N>. Unlike KdSliceN::sort, KdIndexTreeN::build doesn't sort input items.

KdSliceN

A slice of kd-tree. This type implements std::ops::Deref to [T]. This is an unsized type, meaning that it must always be used as a reference. For an owned version of this type, see KdTree.

KdTreeN

An owned kd-tree. This type implements std::ops::Deref to KdSlice.

Traits

KdPoint

A trait to represent k-dimensional point.

Type Definitions

KdIndexTree
KdIndexTree1
KdIndexTree2
KdIndexTree3
KdIndexTree4
KdIndexTree5
KdIndexTree6
KdIndexTree7
KdIndexTree8
KdMap

kd-tree of key-value pairs.

KdMapSlice

kd-tree slice of key-value pairs.

KdSlice
KdSlice1
KdSlice2
KdSlice3
KdSlice4
KdSlice5
KdSlice6
KdSlice7
KdSlice8
KdTree
KdTree1
KdTree2
KdTree3
KdTree4
KdTree5
KdTree6
KdTree7
KdTree8