Skip to main content

Local

Struct Local 

Source
pub struct Local<'a, V> { /* private fields */ }
Expand description

Vertices in a tile’s local frame — v − origin, computed as they are read — every position checked to fit i32 before the slice is handed out.

A line run is lent from the caller’s input, and skips consecutive duplicate positions (the first of each is kept). A polygon ring has no consecutive duplicates, and is closed: its first vertex repeated at the end, which a ring lent open has iter append (drop it for an MVT ClosePath). It is lent from the input when the polygon lies inside one tile, else built in the slicer’s working memory, clipped and with synthetic corners.

Implementations§

Source§

impl<'a, V: Vertex> Local<'a, V>

Source

pub fn iter(&self) -> LocalIter<'a, V> ⓘ

The vertices in the tile’s local frame.

Source

pub fn to_vec(self) -> Vec<V>

The vertices collected into a Vec, in the tile’s local frame.

Source

pub fn global(&self) -> &'a [V]

The vertices in the global frame: each local vertex plus origin, consecutive duplicates included. For a line run this is a subslice of the input line, so its position in the line tells which vertices the run covers; for a clipped polygon ring it is the slicer’s built ring. For a ring lent open this is without the repeated first vertex.

Source

pub fn origin(&self) -> Coord<i32>

The tile origin (tile · extent) the local frame is relative to.

Trait Implementations§

Source§

impl<'a, V: Clone> Clone for Local<'a, V>

Source§

fn clone(&self) -> Self

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<'a, V: Copy> Copy for Local<'a, V>

Source§

impl<'a, V: Debug> Debug for Local<'a, V>

Source§

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

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

impl<'a, V: Eq> Eq for Local<'a, V>

Source§

impl<'a, V: Vertex> IntoIterator for &Local<'a, V>

Source§

type Item = V

The type of the elements being iterated over.
Source§

type IntoIter = LocalIter<'a, V>

Which kind of iterator are we turning this into?
Source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
Source§

impl<'a, V: Vertex> IntoIterator for Local<'a, V>

Source§

type Item = V

The type of the elements being iterated over.
Source§

type IntoIter = LocalIter<'a, V>

Which kind of iterator are we turning this into?
Source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
Source§

impl<'a, V: PartialEq> PartialEq for Local<'a, V>

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl<'a, V: PartialEq> StructuralPartialEq for Local<'a, V>

Auto Trait Implementations§

§

impl<'a, V> Freeze for Local<'a, V>
where &'a [V]: Freeze,

§

impl<'a, V> RefUnwindSafe for Local<'a, V>
where &'a [V]: RefUnwindSafe,

§

impl<'a, V> Send for Local<'a, V>
where &'a [V]: Send,

§

impl<'a, V> Sync for Local<'a, V>
where &'a [V]: Sync,

§

impl<'a, V> Unpin for Local<'a, V>
where &'a [V]: Unpin,

§

impl<'a, V> UnsafeUnpin for Local<'a, V>
where &'a [V]: UnsafeUnpin,

§

impl<'a, V> UnwindSafe for Local<'a, V>
where &'a [V]: UnwindSafe,

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> 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 = !

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

fn try_from(value: U) -> Result<T, !>

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.