[][src]Struct dinotree_alg::analyze::NotSorted

pub struct NotSorted<'a, A: Axis, T: Aabb>(_);
👎 Deprecated:

use the broccoli crate instead

A version of dinotree where the elements are not sorted along each axis, like a KD Tree. For comparison, a normal kd-tree is provided by NotSorted. In this tree, the elements are not sorted along an axis at each level. Construction of NotSorted is faster than DinoTree since it does not have to sort bots that belong to each node along an axis. But most query algorithms can usually take advantage of this extra property.

Implementations

impl<'a, T: Aabb + Send + Sync> NotSorted<'a, DefaultA, T>[src]

pub fn new_par(bots: &'a mut [T]) -> NotSorted<'a, DefaultA, T>[src]

👎 Deprecated:

use the broccoli crate instead

impl<'a, T: Aabb> NotSorted<'a, DefaultA, T>[src]

pub fn new(bots: &'a mut [T]) -> NotSorted<'a, DefaultA, T>[src]

👎 Deprecated:

use the broccoli crate instead

impl<'a, A: Axis, T: Aabb + Send + Sync> NotSorted<'a, A, T>[src]

pub fn with_axis_par(axis: A, bots: &'a mut [T]) -> NotSorted<'a, A, T>[src]

👎 Deprecated:

use the broccoli crate instead

impl<'a, A: Axis, T: Aabb> NotSorted<'a, A, T>[src]

pub fn with_axis(axis: A, bots: &'a mut [T]) -> NotSorted<'a, A, T>[src]

👎 Deprecated:

use the broccoli crate instead

impl<'a, A: Axis, T: Aabb + HasInner + Send + Sync> NotSorted<'a, A, T>[src]

pub fn find_intersections_mut_par(
    &mut self,
    func: impl Fn(&mut T::Inner, &mut T::Inner) + Send + Sync + Copy
)
[src]

👎 Deprecated:

use the broccoli crate instead

impl<'a, A: Axis, T: Aabb> NotSorted<'a, A, T>[src]

pub fn axis(&self) -> A[src]

👎 Deprecated:

use the broccoli crate instead

pub fn get_height(&self) -> usize[src]

👎 Deprecated:

use the broccoli crate instead

pub fn vistr(&self) -> Vistr<'_, NodeMut<'a, T>>[src]

👎 Deprecated:

use the broccoli crate instead

pub fn vistr_mut(&mut self) -> VistrMut<'_, NodeMut<'a, T>>[src]

👎 Deprecated:

use the broccoli crate instead

impl<'a, A: Axis, T: Aabb + HasInner> NotSorted<'a, A, T>[src]

pub fn find_intersections_mut(
    &mut self,
    func: impl FnMut(&mut T::Inner, &mut T::Inner)
)
[src]

👎 Deprecated:

use the broccoli crate instead

Auto Trait Implementations

impl<'a, A, T> RefUnwindSafe for NotSorted<'a, A, T> where
    A: RefUnwindSafe,
    T: RefUnwindSafe,
    <T as Aabb>::Num: RefUnwindSafe

impl<'a, A, T> Send for NotSorted<'a, A, T> where
    T: Send,
    <T as Aabb>::Num: Send

impl<'a, A, T> Sync for NotSorted<'a, A, T> where
    T: Sync,
    <T as Aabb>::Num: Sync

impl<'a, A, T> Unpin for NotSorted<'a, A, T> where
    A: Unpin,
    <T as Aabb>::Num: Unpin

impl<'a, A, T> !UnwindSafe for NotSorted<'a, A, T>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.