header_utils
Loading...
Searching...
No Matches
Geometry

Structures and functions that deal with 2D geometry. More...

Topics

 Angles
 Direction
 Contains the direction type, which represents one of the eight cardinal compass directions.
 Lines
 Normals
 Functions useful for work with normal vectors.
 Points
 Polygon
 Polygons and polygon triangulation; NOTE: Triangulation features are not currently implemented.
 Projections
 Squares
 Operations on positions in a 2D square grid.
 Triangles

Concepts

concept  ghassanpl::geometry::shape
 Any contiguous non-empty set of 2D points.
concept  ghassanpl::geometry::area_shape
 A shape for which the concept of an "area" has a finite interpretation.
concept  ghassanpl::geometry::polygon_shape
 A shape with vertices and edges.
concept  ghassanpl::geometry::polygon_area_shape
 An area_shape with vertices and edges.
concept  ghassanpl::geometry::indexable_polygonlike
 Any type that we can index into which will return a tvec2 of some sort. This includes, for example, std::vector<vec2>.

Classes

struct  ghassanpl::geometry::tcapsule< T >
 Represents a 2D capsule area_shape. More...
struct  ghassanpl::geometry::tcircle< T >
 Represents a 2D circle area_shape. More...
struct  ghassanpl::geometry::tellipse< T >
 Represents a 2D, axis-aligned ellipse area_shape. More...
struct  ghassanpl::geometry::tray< T >
 Represents a 2D ray. More...
struct  ghassanpl::geometry::tsegment< T >
 Represents a 2D segment (technically a polygon_shape). More...
struct  ghassanpl::geometry::trec2< T >
 Represents a 2D rectangle polygon_shape. More...

Detailed Description

Structures and functions that deal with 2D geometry.