Struct maplibre::coords::WorldTileCoords
source · #[repr(C)]pub struct WorldTileCoords {
pub x: i32,
pub y: i32,
pub z: ZoomLevel,
}
Expand description
Every tile has tile coordinates. Every tile coordinate can be mapped to a coordinate within the world. This provides the freedom to map from TMS to Slippy map tile names.
§Coordinate System Origin
The origin of the coordinate system is in the upper-left corner.
Fields§
§x: i32
§y: i32
§z: ZoomLevel
Implementations§
source§impl WorldTileCoords
impl WorldTileCoords
sourcepub fn into_tile(self, scheme: TileAddressingScheme) -> Option<TileCoords>
pub fn into_tile(self, scheme: TileAddressingScheme) -> Option<TileCoords>
Returns the tile coords according to an addressing scheme. This is not possible if the
coordinates of this WorldTileCoords
exceed their bounds.
§Example
The WorldTileCoords
WT(x=5,y=5,z=0)
exceeds its bounds because there is no tile
x=5,y=5
at zoom level z=0
.
sourcepub fn transform_for_zoom(&self, zoom: Zoom) -> Matrix4<f64>
pub fn transform_for_zoom(&self, zoom: Zoom) -> Matrix4<f64>
Adopted from Transform::calculatePosMatrix
pub fn into_aligned(self) -> AlignedWorldTileCoords
sourcepub fn build_quad_key(&self) -> Option<Quadkey>
pub fn build_quad_key(&self) -> Option<Quadkey>
Adopted from tilebelt
sourcepub fn get_children(&self) -> [WorldTileCoords; 4]
pub fn get_children(&self) -> [WorldTileCoords; 4]
Adopted from tilebelt
sourcepub fn get_parent(&self) -> Option<WorldTileCoords>
pub fn get_parent(&self) -> Option<WorldTileCoords>
Get the tile which is one zoom level lower and contains this one
sourcepub fn stencil_reference_value_3d(&self) -> u8
pub fn stencil_reference_value_3d(&self) -> u8
Returns unique stencil reference values for WorldTileCoords which are 3D.
Tiles from arbitrary z
can lie next to each other, because we mix tiles from
different levels based on availability.
Trait Implementations§
source§impl Clone for WorldTileCoords
impl Clone for WorldTileCoords
source§fn clone(&self) -> WorldTileCoords
fn clone(&self) -> WorldTileCoords
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for WorldTileCoords
impl Debug for WorldTileCoords
source§impl Default for WorldTileCoords
impl Default for WorldTileCoords
source§fn default() -> WorldTileCoords
fn default() -> WorldTileCoords
source§impl<'de> Deserialize<'de> for WorldTileCoords
impl<'de> Deserialize<'de> for WorldTileCoords
source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
source§impl Display for WorldTileCoords
impl Display for WorldTileCoords
source§impl Hash for WorldTileCoords
impl Hash for WorldTileCoords
source§impl Ord for WorldTileCoords
impl Ord for WorldTileCoords
source§fn cmp(&self, other: &WorldTileCoords) -> Ordering
fn cmp(&self, other: &WorldTileCoords) -> Ordering
1.21.0 · source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
source§impl PartialEq for WorldTileCoords
impl PartialEq for WorldTileCoords
source§fn eq(&self, other: &WorldTileCoords) -> bool
fn eq(&self, other: &WorldTileCoords) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl PartialOrd for WorldTileCoords
impl PartialOrd for WorldTileCoords
source§fn partial_cmp(&self, other: &WorldTileCoords) -> Option<Ordering>
fn partial_cmp(&self, other: &WorldTileCoords) -> Option<Ordering>
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl Serialize for WorldTileCoords
impl Serialize for WorldTileCoords
impl Copy for WorldTileCoords
impl Eq for WorldTileCoords
impl StructuralPartialEq for WorldTileCoords
Auto Trait Implementations§
impl Freeze for WorldTileCoords
impl RefUnwindSafe for WorldTileCoords
impl Send for WorldTileCoords
impl Sync for WorldTileCoords
impl Unpin for WorldTileCoords
impl UnwindSafe for WorldTileCoords
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
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
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
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
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>
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