Skip to main content

conspire/geometry/ntree/
mod.rs

1mod balance;
2mod defeature;
3mod deref;
4mod dual;
5mod from;
6mod index;
7mod into;
8mod leaves;
9mod node;
10mod pair;
11mod prune;
12mod read;
13mod rescale;
14mod subdivide;
15mod write;
16
17pub use crate::geometry::ntree::{
18    balance::{Balance, Balancing},
19    dual::Dualization,
20    node::Nodes,
21    pair::Pairing,
22    read::Input,
23    rescale::Rescaling,
24    write::Output,
25};
26
27pub struct Orthotree<const D: usize, const L: usize, const M: usize, const N: usize, T, U, V = ()> {
28    balanced: Balancing,
29    nodes: Nodes<D, M, N, T, U, V>,
30    paired: Pairing,
31    rescale: Rescaling<D>,
32}
33
34pub type BinaryTree<T, U, V = ()> = Orthotree<1, 1, 2, 2, T, U, V>;
35pub type Quadtree<T, U, V = ()> = Orthotree<2, 2, 4, 4, T, U, V>;
36pub type Octree<T, U, V = ()> = Orthotree<3, 4, 6, 8, T, U, V>;
37pub type Hexadecatree<T, U, V = ()> = Orthotree<4, 8, 8, 16, T, U, V>;