ProjGeom 1.0.11
Loading...
Searching...
No Matches
ck_concepts.hpp
Go to the documentation of this file.
1
5#pragma once
6
7// #include <array>
8
9#include "pg_concepts.hpp"
10
11namespace fun {
18 template <class Point, class Line = typename Point::Dual>
21 && requires(const Point& pt_p, const Line& ln_l) {
22 { pt_p.perp() } -> std::convertible_to<Line>; // pole or polar
23 };
24
31 template <class Point, class Line = typename Point::Dual>
34
41 template <class Value, class Point, class Line = typename Point::Dual>
42 concept CayleyKleinPlane = //
44 && requires(const Point& pt_p, const Line& ln_l) {
45 { pt_p.perp() } -> std::convertible_to<Line>; // pole or polar
46 };
47
54 template <class Value, class Point, class Line = typename Point::Dual>
57
58} // namespace fun
Cayley-Klein plane Concept (full)
Definition ck_concepts.hpp:56
Cayley-Klein plane Concept (full)
Definition ck_concepts.hpp:33
Cayley-Klein plane Concept.
Definition ck_concepts.hpp:19
Cayley-Klein plane Concept.
Definition ck_concepts.hpp:42
Projective plane Concept.
Definition pg_concepts.hpp:20
Projective plane Concept.
Definition pg_concepts.hpp:46
Definition ck_concepts.hpp:11
C++20 concepts for projective plane primitives.