# Module iron_shapes::concepts

source · ## Expand description

Abstraction concepts over geometric primitives.

## References

## Traits

- Define a type used for coordinates.
- Define the coordinate concept. This will be used to parametrize all other geometric concepts.
- Describe an interval of coordinates by a start value and an end value.
- Loop over points/vertices.
- Convert a polygon into an iterator over polygon segments.
- Basic traits to get and set Kartesian coordinates of a point in the two-dimensional plane.
- Concept of a point in the Euclidean plane.
- Concept of a polygon which consists of a single closed loop of vertices.
- Concept of a polygon with axis-aligned edges. The polygon consists of a single closed loop of vertices, i.e. has no holes.
- Set of multiple polygons with axis-aligned edges.
- Concept of a polygon with axis-aligned edges and holes.
- Set of multiple polygons edges.
- Concept of a polygon with holes.
- Concept of an axis-aligned rectangle.
- A polygon edge.