Skip to main content

Quadratic

Struct Quadratic 

Source
pub struct Quadratic<const MAX: usize = 8, const MIN: usize = 3>;
Expand description

Quadratic split — Boost’s textbook default.

O(n²): pick the two children whose combined bounding box wastes the most area as the seeds of the two groups, then assign each remaining child to whichever group’s box it enlarges least. Mirrors index/detail/rtree/quadratic/redistribute_elements.hpp.

Trait Implementations§

Source§

impl<const MAX: usize, const MIN: usize> Clone for Quadratic<MAX, MIN>

Source§

fn clone(&self) -> Quadratic<MAX, MIN>

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<const MAX: usize, const MIN: usize> Copy for Quadratic<MAX, MIN>

Source§

impl<const MAX: usize, const MIN: usize> Debug for Quadratic<MAX, MIN>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<const MAX: usize, const MIN: usize> Default for Quadratic<MAX, MIN>

Source§

fn default() -> Quadratic<MAX, MIN>

Returns the “default value” for a type. Read more
Source§

impl<const MAX: usize, const MIN: usize> SplitParameters for Quadratic<MAX, MIN>

Source§

const MAX: usize = MAX

Maximum children per node before it must split.
Source§

const MIN: usize = MIN

Minimum children each node must keep after a split.
Source§

fn split(entries: &[Bounds]) -> (Vec<usize>, Vec<usize>)

Partition entries (a bounds-per-child list) into two groups of indices, each of size at least Self::MIN.

Auto Trait Implementations§

§

impl<const MAX: usize, const MIN: usize> Freeze for Quadratic<MAX, MIN>

§

impl<const MAX: usize, const MIN: usize> RefUnwindSafe for Quadratic<MAX, MIN>

§

impl<const MAX: usize, const MIN: usize> Send for Quadratic<MAX, MIN>

§

impl<const MAX: usize, const MIN: usize> Sync for Quadratic<MAX, MIN>

§

impl<const MAX: usize, const MIN: usize> Unpin for Quadratic<MAX, MIN>

§

impl<const MAX: usize, const MIN: usize> UnsafeUnpin for Quadratic<MAX, MIN>

§

impl<const MAX: usize, const MIN: usize> UnwindSafe for Quadratic<MAX, MIN>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> SameAs<T> for T

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.