# [−][src]Trait plexus::primitive::Polygonal

pub trait Polygonal: Topological {
fn is_convex(&self) -> bool    where        Self::Vertex: AsPosition,        Position<Self::Vertex>: EuclideanSpace + FiniteDimensional<N = U2>,        Scalar<Position<Self::Vertex>>: FloatConst,
{ ... }
}

Primitive polygonal structure.

Polygonal types are Topological types with three or more edges. These types are strictly topological and do not necessarily represent geometric concepts like polygons, which are only defined in $\Reals^2$. However, Polygonal types are often used as a geometric approximation of polygons.

## Provided methods

### fn is_convex(&self) -> bool where    Self::Vertex: AsPosition,    Position<Self::Vertex>: EuclideanSpace + FiniteDimensional<N = U2>,    Scalar<Position<Self::Vertex>>: FloatConst,

Determines if a polygonal structure is convex.

This function rejects degenerate polygons, such as polygons with collinear or converged vertices.