![]() |
Pangolin
Header-only C++20 plane computational geometry library
|
Public declaration of pgl::Triangle. More...
#include "shape/rectangle.hpp"#include <array>#include <cassert>#include <compare>#include <concepts>#include <cstddef>#include <iterator>#include <optional>#include <vector>#include <ostream>#include <type_traits>#include <utility>Go to the source code of this file.
Classes | |
| struct | pgl::Triangle< PointType_, TLabel > |
| Closed triangle stored by three vertices. More... | |
| class | pgl::Triangle< PointType_, TLabel >::BoundaryIterator< Oriented > |
Namespaces | |
| namespace | pgl |
Functions | |
| pgl::Triangle () -> Triangle< Point<>, NoLabel > | |
| template<class PointType> | |
| pgl::Triangle (PointType, PointType, PointType) -> Triangle< PointType, NoLabel > | |
| template<class PointType, class A> | |
| pgl::Triangle (PointType, PointType, PointType, A) -> Triangle< PointType, std::decay_t< A > > | |
| template<class Number> | |
| pgl::Triangle (Number, Number, Number, Number, Number, Number) -> Triangle< Point< Number >, NoLabel > | |
| template<class PointType, class LabelType, class TranslationNumber, class TranslationLabel> | |
| constexpr auto | pgl::operator- (const Triangle< PointType, LabelType > &triangle, const Point< TranslationNumber, TranslationLabel > &translation) |
| Returns a copy of a triangle translated by the opposite point. | |
| template<class PointType, class LabelType, class Scalar> requires (!detail::is_point_v<Scalar> && !TransformationConcept<Scalar>) | |
| constexpr auto | pgl::operator* (const Triangle< PointType, LabelType > &triangle, const Scalar &scalar) |
| Returns a scaled copy of a triangle. | |
| template<class Scalar, class PointType, class LabelType> requires (!detail::is_point_v<Scalar> && !TransformationConcept<Scalar>) | |
| constexpr auto | pgl::operator* (const Scalar &scalar, const Triangle< PointType, LabelType > &triangle) |
| Returns a scaled copy of a triangle with the scalar on the left. | |
| template<class PointType, class LabelType, class Scalar> requires (!detail::is_point_v<Scalar> && !TransformationConcept<Scalar>) | |
| constexpr auto | pgl::operator/ (const Triangle< PointType, LabelType > &triangle, const Scalar &scalar) |
| Returns a copy of a triangle divided by a scalar. | |
| template<class PointType, class LabelType> | |
| std::ostream & | pgl::operator<< (std::ostream &stream, const Triangle< PointType, LabelType > &triangle) |
| Streams a triangle as <abc>. | |
Public declaration of pgl::Triangle.
Triangle is the smallest polygonal 2D primitive and anchors finite-area, vertex-based, and edge-based operations in the current library.