Struct geom::bounds::GPSBounds[][src]

pub struct GPSBounds {
    pub min_lon: f64,
    pub min_lat: f64,
    pub max_lon: f64,
    pub max_lat: f64,
}

Represents a rectangular boundary of LonLat points. After building one of these, LonLats can be transformed into Pt2Ds, treating the top-left of the boundary as (0, 0), and growing to the right and down (screen-drawing order, not Cartesian) in meters.

Fields

min_lon: f64min_lat: f64max_lon: f64max_lat: f64

Implementations

impl GPSBounds[src]

pub fn new() -> GPSBounds[src]

A boundary including no points.

pub fn from(pts: Vec<LonLat>) -> GPSBounds[src]

Create a boundary covering some points.

pub fn update(&mut self, pt: LonLat)[src]

Update the boundary to include this point.

pub fn contains(&self, pt: LonLat) -> bool[src]

True if the point is within the boundary.

pub fn get_max_world_pt(&self) -> Pt2D[src]

The bottom-right corner of the boundary, in map-space.

pub fn to_bounds(&self) -> Bounds[src]

Converts the boundary to map-space.

pub fn try_convert(&self, pts: &Vec<LonLat>) -> Option<Vec<Pt2D>>[src]

Convert all points to map-space, failing if any points are outside this boundary.

pub fn convert(&self, pts: &Vec<LonLat>) -> Vec<Pt2D>[src]

Convert all points to map-space. The points may be outside this boundary.

pub fn convert_back(&self, pts: &Vec<Pt2D>) -> Vec<LonLat>[src]

Convert map-space points back to LonLats. This is only valid if the GPSBounds used is the same as the one used to originally produce the Pt2Ds.

Trait Implementations

impl Clone for GPSBounds[src]

impl Debug for GPSBounds[src]

impl<'de> Deserialize<'de> for GPSBounds[src]

impl PartialEq<GPSBounds> for GPSBounds[src]

impl Serialize for GPSBounds[src]

impl StructuralPartialEq for GPSBounds[src]

Auto Trait Implementations

impl RefUnwindSafe for GPSBounds[src]

impl Send for GPSBounds[src]

impl Sync for GPSBounds[src]

impl Unpin for GPSBounds[src]

impl UnwindSafe for GPSBounds[src]

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> DeserializeOwned for T where
    T: for<'de> Deserialize<'de>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.