pub struct WorldAabb {
pub min: WorldPos,
pub max: WorldPos,
}Expand description
An axis-aligned world-space box — the culler’s unit of work, and the only
thing the Hierarchy levels are really made of (a coarse level is a set of
bounding volumes that stand in for the fine level beneath it).
Fields§
§min: WorldPos§max: WorldPosImplementations§
Source§impl WorldAabb
impl WorldAabb
Sourcepub fn point(p: WorldPos) -> Self
pub fn point(p: WorldPos) -> Self
The degenerate box at a point — what a POI, a pin or a graph node has.
pub fn is_empty(&self) -> bool
pub fn union(self, o: Self) -> Self
Sourcepub fn overlaps_2d(&self, o: &Self) -> bool
pub fn overlaps_2d(&self, o: &Self) -> bool
2D overlap test — the culler’s inner predicate. Z is deliberately ignored: a top-down or tilted view culls in the ground plane and lets the depth buffer sort height out.
pub fn centre(&self) -> WorldPos
Trait Implementations§
impl Copy for WorldAabb
impl StructuralPartialEq for WorldAabb
Auto Trait Implementations§
impl Freeze for WorldAabb
impl RefUnwindSafe for WorldAabb
impl Send for WorldAabb
impl Sync for WorldAabb
impl Unpin for WorldAabb
impl UnsafeUnpin for WorldAabb
impl UnwindSafe for WorldAabb
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more