pub struct ChunkGrid {
pub origin: ChunkCoord,
pub width: i32,
pub height: i32,
}Expand description
A 2D grid of chunk coordinates within a rectangular region.
Fields§
§origin: ChunkCoord§width: i32§height: i32Implementations§
Source§impl ChunkGrid
impl ChunkGrid
Sourcepub fn around(center: ChunkCoord, half_extent: i32) -> Self
pub fn around(center: ChunkCoord, half_extent: i32) -> Self
Create a grid of chunks centred on center with given half-extent.
Sourcepub fn iter(&self) -> impl Iterator<Item = ChunkCoord> + '_
pub fn iter(&self) -> impl Iterator<Item = ChunkCoord> + '_
Iterate all coords in the grid.
Sourcepub fn contains(&self, c: ChunkCoord) -> bool
pub fn contains(&self, c: ChunkCoord) -> bool
Test if a coord is within this grid.
Sourcepub fn at(&self, col: i32, row: i32) -> ChunkCoord
pub fn at(&self, col: i32, row: i32) -> ChunkCoord
Convert a grid-relative (col, row) to ChunkCoord.
Sourcepub fn sorted_by_distance(&self, center: ChunkCoord) -> Vec<ChunkCoord>
pub fn sorted_by_distance(&self, center: ChunkCoord) -> Vec<ChunkCoord>
Coords sorted by distance to center.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ChunkGrid
impl RefUnwindSafe for ChunkGrid
impl Send for ChunkGrid
impl Sync for ChunkGrid
impl Unpin for ChunkGrid
impl UnsafeUnpin for ChunkGrid
impl UnwindSafe for ChunkGrid
Blanket Implementations§
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.