Trait geo::algorithm::sweep::Cross

source ·
pub trait Cross: Sized + Debug {
    type Scalar: GeoFloat;

    // Required method
    fn line(&self) -> LineOrPoint<Self::Scalar>;
}
Expand description

Interface for types that can be processed to detect crossings.

This type is implemented by LineOrPoint, but users may also implement this on custom types to store extra information. Any type that represents an ordered line-segment may implement this.

§Cloning

Note that for usage with the planar sweep iterators, the type must also impl. Clone. If the custom type is not cheap to clone, use either a reference to the type, a Rc or an Arc. All these are supported via blanket trait implementations.

Required Associated Types§

source

type Scalar: GeoFloat

Scalar used the coordinates.

Required Methods§

source

fn line(&self) -> LineOrPoint<Self::Scalar>

The geometry associated with this type. Use a Line with the start and end coordinates to represent a point.

Object Safety§

This trait is not object safe.

Implementations on Foreign Types§

source§

impl<'a, T: Cross> Cross for &'a T

§

type Scalar = <T as Cross>::Scalar

source§

fn line(&self) -> LineOrPoint<Self::Scalar>

source§

impl<T: Cross> Cross for Box<T>

§

type Scalar = <T as Cross>::Scalar

source§

fn line(&self) -> LineOrPoint<Self::Scalar>

source§

impl<T: Cross> Cross for Rc<T>

§

type Scalar = <T as Cross>::Scalar

source§

fn line(&self) -> LineOrPoint<Self::Scalar>

source§

impl<T: Cross> Cross for Arc<T>

§

type Scalar = <T as Cross>::Scalar

source§

fn line(&self) -> LineOrPoint<Self::Scalar>

Implementors§

source§

impl<T: GeoFloat> Cross for LineOrPoint<T>

§

type Scalar = T

source§

impl<T: GeoFloat> Cross for Line<T>

§

type Scalar = T