![]() |
Pangolin
Header-only C++20 plane computational geometry library
|
Stream output helpers for Pangolin value types. More...
#include "shape/shape.hpp"Go to the source code of this file.
Namespaces | |
| namespace | pgl |
Functions | |
| template<class Number, class Label> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Point< Number, Label > &point) |
| Streams a point as (x,y) or label:(x,y). | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Segment< PointType, LabelType > &segment) |
| Streams a segment as p--q, or label:{p--q} when it carries a label. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const OrientedSegment< PointType, LabelType > &segment) |
| Streams an oriented segment as p->q, or label:{p->q} when it carries a label. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Line< PointType, LabelType > &line) |
| Streams a line as -p--q-. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const OrientedLine< PointType, LabelType > &line) |
| Streams an oriented line as -p--q->. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Ray< PointType, LabelType > &ray) |
| Streams a ray as p--q->. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Rectangle< PointType, LabelType > &rectangle) |
| Streams a rectangle as [min,max], or as [] when it is empty. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Triangle< PointType, LabelType > &triangle) |
| Streams a triangle as <abc>. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Halfplane< PointType, LabelType > &halfplane) |
| Streams a half-plane as ^-p--q-^. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Disk< PointType, LabelType > &disk) |
| Streams a disk as ((p1)(p2)(p3)). | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Convex< PointType, LabelType > &convex) |
| Streams a Convex as Convex[(P1),(P2),(P3),(Pn)...]. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Polygon< PointType, LabelType > &polygon) |
| Streams a Polygon as Polygon[(P1),(P2),(P3),(Pn)...]. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const PolygonWithHoles< PointType, LabelType > ®ion) |
| Streams a region as PolygonWithHoles[outer,holes...]. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const PolygonSet< PointType, LabelType > &set) |
| Streams a set as PolygonSet[components...]. | |
| template<class PointType, class LabelType, class Storage> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const MonotoneChain< PointType, LabelType, Storage > &chain) |
| Streams a MonotoneChain as MonotoneChain[(P1),(P2),(P3),...]. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Polyline< PointType, LabelType > &polyline) |
| Streams a Polyline as Polyline[(P1),(P2),(P3),...]. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const HalfplaneIntersection< PointType, LabelType > ®ion) |
| Streams a HalfplaneIntersection as HalfplaneIntersection[h1,h2,...]. | |
Stream output helpers for Pangolin value types.
Printable geometry makes tests, debugging, and examples much easier to read, so formatted output is implemented centrally here.