Trait GeometryTrait

Source
pub trait GeometryTrait {
    type T;
    type PointType<'a>: 'a + PointTrait<T = Self::T>
       where Self: 'a;
    type LineStringType<'a>: 'a + LineStringTrait<T = Self::T>
       where Self: 'a;
    type PolygonType<'a>: 'a + PolygonTrait<T = Self::T>
       where Self: 'a;
    type MultiPointType<'a>: 'a + MultiPointTrait<T = Self::T>
       where Self: 'a;
    type MultiLineStringType<'a>: 'a + MultiLineStringTrait<T = Self::T>
       where Self: 'a;
    type MultiPolygonType<'a>: 'a + MultiPolygonTrait<T = Self::T>
       where Self: 'a;
    type GeometryCollectionType<'a>: 'a + GeometryCollectionTrait<T = Self::T>
       where Self: 'a;
    type RectType<'a>: 'a + RectTrait<T = Self::T>
       where Self: 'a;
    type TriangleType<'a>: 'a + TriangleTrait<T = Self::T>
       where Self: 'a;
    type LineType<'a>: 'a + LineTrait<T = Self::T>
       where Self: 'a;

    // Required methods
    fn dim(&self) -> Dimensions;
    fn as_type(
        &self,
    ) -> GeometryType<'_, Self::PointType<'_>, Self::LineStringType<'_>, Self::PolygonType<'_>, Self::MultiPointType<'_>, Self::MultiLineStringType<'_>, Self::MultiPolygonType<'_>, Self::GeometryCollectionType<'_>, Self::RectType<'_>, Self::TriangleType<'_>, Self::LineType<'_>>;
}
Expand description

A trait for accessing data from a generic Geometry.

Required Associated Types§

Source

type T

The coordinate type of this geometry

Source

type PointType<'a>: 'a + PointTrait<T = Self::T> where Self: 'a

The type of each underlying Point, which implements PointTrait

Source

type LineStringType<'a>: 'a + LineStringTrait<T = Self::T> where Self: 'a

The type of each underlying LineString, which implements LineStringTrait

Source

type PolygonType<'a>: 'a + PolygonTrait<T = Self::T> where Self: 'a

The type of each underlying Polygon, which implements PolygonTrait

Source

type MultiPointType<'a>: 'a + MultiPointTrait<T = Self::T> where Self: 'a

The type of each underlying MultiPoint, which implements MultiPointTrait

Source

type MultiLineStringType<'a>: 'a + MultiLineStringTrait<T = Self::T> where Self: 'a

The type of each underlying MultiLineString, which implements MultiLineStringTrait

Source

type MultiPolygonType<'a>: 'a + MultiPolygonTrait<T = Self::T> where Self: 'a

The type of each underlying MultiPolygon, which implements MultiPolygonTrait

Source

type GeometryCollectionType<'a>: 'a + GeometryCollectionTrait<T = Self::T> where Self: 'a

The type of each underlying GeometryCollection, which implements GeometryCollectionTrait

Source

type RectType<'a>: 'a + RectTrait<T = Self::T> where Self: 'a

The type of each underlying Rect, which implements RectTrait

Source

type TriangleType<'a>: 'a + TriangleTrait<T = Self::T> where Self: 'a

The type of each underlying Triangle, which implements TriangleTrait

Source

type LineType<'a>: 'a + LineTrait<T = Self::T> where Self: 'a

The type of each underlying Line, which implements LineTrait

Required Methods§

Source

fn dim(&self) -> Dimensions

The dimension of this geometry

Source

fn as_type( &self, ) -> GeometryType<'_, Self::PointType<'_>, Self::LineStringType<'_>, Self::PolygonType<'_>, Self::MultiPointType<'_>, Self::MultiLineStringType<'_>, Self::MultiPolygonType<'_>, Self::GeometryCollectionType<'_>, Self::RectType<'_>, Self::TriangleType<'_>, Self::LineType<'_>>

Cast this geometry to a GeometryType enum, which allows for downcasting to a specific type

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a Geometry<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a GeometryCollection<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a GeometryCollection<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a GeometryCollection<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a GeometryCollection<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a GeometryCollection<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a GeometryCollection<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a GeometryCollection<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a GeometryCollection<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a GeometryCollection<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a GeometryCollection<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a GeometryCollection<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a Line<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a Line<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a LineString<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a MultiLineString<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a MultiLineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a MultiLineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a MultiLineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a MultiLineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a MultiLineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a MultiLineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a MultiLineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a MultiLineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a MultiLineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a MultiLineString<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a MultiPoint<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a MultiPolygon<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a Point<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a Point<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a Polygon<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a Rect<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<'a, T: CoordNum + 'a> GeometryTrait for &'a Triangle<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<&'a Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<&'a Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<&'a Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<&'a Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<&'a Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<&'a Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<&'a Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<&'a Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<&'a Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<&'a Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<T: CoordNum> GeometryTrait for Geometry<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<Geometry<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<T: CoordNum> GeometryTrait for GeometryCollection<T>

Source§

impl<T: CoordNum> GeometryTrait for Line<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<Line<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<Line<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<T: CoordNum> GeometryTrait for LineString<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<LineString<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<T: CoordNum> GeometryTrait for MultiLineString<T>

Source§

impl<T: CoordNum> GeometryTrait for MultiPoint<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<MultiPoint<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<T: CoordNum> GeometryTrait for MultiPolygon<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<MultiPolygon<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<T: CoordNum> GeometryTrait for Point<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<Point<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<Point<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<T: CoordNum> GeometryTrait for Polygon<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<Polygon<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<T: CoordNum> GeometryTrait for Rect<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<Rect<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Source§

impl<T: CoordNum> GeometryTrait for Triangle<T>

Source§

type T = T

Source§

type PointType<'b> = Point<<Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineStringType<'b> = LineString<<Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type PolygonType<'b> = Polygon<<Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPointType<'b> = MultiPoint<<Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiLineStringType<'b> = MultiLineString<<Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type MultiPolygonType<'b> = MultiPolygon<<Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type GeometryCollectionType<'b> = GeometryCollection<<Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type RectType<'b> = Rect<<Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type TriangleType<'b> = Triangle<<Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

type LineType<'b> = Line<<Triangle<T> as GeometryTrait>::T> where Self: 'b

Source§

fn dim(&self) -> Dimensions

Source§

fn as_type( &self, ) -> GeometryType<'_, Point<T>, LineString<T>, Polygon<T>, MultiPoint<T>, MultiLineString<T>, MultiPolygon<T>, GeometryCollection<T>, Rect<T>, Triangle<T>, Line<T>>

Implementors§

Source§

impl<'a, T> GeometryTrait for &'a UnimplementedGeometryCollection<T>

Source§

impl<'a, T> GeometryTrait for &'a UnimplementedLine<T>

Source§

impl<'a, T> GeometryTrait for &'a UnimplementedLineString<T>

Source§

impl<'a, T> GeometryTrait for &'a UnimplementedMultiLineString<T>

Source§

impl<'a, T> GeometryTrait for &'a UnimplementedMultiPoint<T>

Source§

impl<'a, T> GeometryTrait for &'a UnimplementedMultiPolygon<T>

Source§

impl<'a, T> GeometryTrait for &'a UnimplementedPoint<T>

Source§

impl<'a, T> GeometryTrait for &'a UnimplementedPolygon<T>

Source§

impl<'a, T> GeometryTrait for &'a UnimplementedRect<T>

Source§

impl<'a, T> GeometryTrait for &'a UnimplementedTriangle<T>

Source§

impl<T> GeometryTrait for UnimplementedGeometry<T>

Source§

impl<T> GeometryTrait for UnimplementedGeometryCollection<T>

Source§

impl<T> GeometryTrait for UnimplementedLine<T>

Source§

impl<T> GeometryTrait for UnimplementedLineString<T>

Source§

impl<T> GeometryTrait for UnimplementedMultiLineString<T>

Source§

impl<T> GeometryTrait for UnimplementedMultiPoint<T>

Source§

impl<T> GeometryTrait for UnimplementedMultiPolygon<T>

Source§

impl<T> GeometryTrait for UnimplementedPoint<T>

Source§

impl<T> GeometryTrait for UnimplementedPolygon<T>

Source§

impl<T> GeometryTrait for UnimplementedRect<T>

Source§

impl<T> GeometryTrait for UnimplementedTriangle<T>