![]() |
Pangolin
Header-only C++20 plane computational geometry library
|
| Npgl | |
| Npdfgen | |
| Cpdf_info | |
| Cpdf_path_operation | |
| Cpdf_object | |
| Cpdf_doc | |
| CArrangement | The planar subdivision induced by a set of one-dimensional shapes |
| CBigInt | Arbitrary precision signed integer |
| CBitMatrix | A bit per cell of a rectangular window of the integer grid |
| CIterator | Forward iterator over the set cells, in row-major order |
| CCanvas | Stores drawable objects and exports them as an SVG image |
| CCanvasCommand | Deferred style update applied to the current canvas style |
| CCanvasStyle | SVG style captured for each inserted element |
| CConvex | Closed convex polygon stored by its vertices |
| CBoundaryIterator | Forward iterator over the (optionally oriented) boundary edges |
| CDisk | Closed Euclidean disk stored by boundary points plus optional disk label |
| CPointIterator | Forward iterator over the three boundary points |
| CDivisionResult | Default result type for an operation that may require division |
| CEmptyShape | The empty set of points in the plane |
| CGraph | Undirected simple graph stored as adjacency sets |
| CIterator | Forward iterator over the vertices of a graph |
| CEdgeIterator | Forward iterator over the undirected edges of a graph |
| CHalfplane | Closed half-plane defined by an oriented boundary line |
| CHalfplaneIntersection | Intersection of closed half-planes; convex but possibly unbounded or empty |
| CIntervalTree | Mutable interval tree over the projection of bounded shapes |
| CLine | Unoriented infinite line |
| CMonotoneChain | Weakly x-monotone polyline stored by lexicographically sorted vertices |
| CBoundaryIterator | Forward iterator over the (optionally oriented) chain edges |
| CNoLabel | Sentinel type used when a point carries no extra label |
| COrientedLine | Directed infinite line with left/right side semantics plus optional line label |
| COrientedSegment | Directed segment preserving source-to-target order plus optional segment label |
| CPoint | Two-dimensional point with optional label payload |
| CPolygon | Closed simple polygon stored by its vertices |
| CBoundaryIterator | Forward iterator over the (optionally oriented) boundary edges |
| CPolygonSet | Set of closed regions with pairwise disjoint interiors |
| CVertexIterator | Forward iterator flattening every component's rings into one vertex sequence, components in canonical order |
| CPolygonWithHoles | Closed region bounded by one outer simple polygon minus disjoint polygonal holes |
| CVertexIterator | Forward iterator flattening the region's rings into one vertex sequence: the outer boundary, then each hole in canonical order |
| CPolyline | Open polygonal chain stored in traversal order; may self-intersect |
| CBoundaryIterator | Forward iterator over the (optionally oriented) polyline edges |
| CRational | Exact rational number class template |
| Crational_int | The integer type a Rational stores its parts in; any other type is its own answer |
| Crational_int< Rational< Int > > | |
| CRay | Half-infinite line starting from one source point plus optional ray label |
| CRectangle | Axis-aligned rectangle stored by minimum and maximum corners |
| CBoundaryIterator | Forward iterator over the four rectangle boundary edges |
| CCornerIterator | Forward iterator over the four corners in counterclockwise order |
| CSegment | Unoriented closed segment between two endpoints plus optional segment label |
| CShape | Runtime variant wrapper over the supported primitive shapes |
| CShapeTree | Static shape tree of bounded shapes |
| CSweepContact | Both boundariesCross and boundariesMeet, from one sweep |
| CTransformation | Affine transformation stored as a 2x3 matrix |
| CTriangle | Closed triangle stored by three vertices |
| CBoundaryIterator | |
| CTriangulation | Triangulation whose connectivity may change and whose vertex set may grow |