|
ProjGeom 1.0.11
|
Projective Point/Line (int64_t specialization) More...
#include <pg_object.hpp>
Public Types | |
| using | Dual = Line |
Public Member Functions | |
| constexpr | PgObject (std::array< int64_t, 3 > coord) |
| Construct a new Pg Object object. | |
| constexpr auto | aux () const -> Line |
| Return the dual object (auxiliary line/point). | |
| constexpr auto | dot (const Line &other) const -> int64_t |
| Dot product with the dual object. | |
| constexpr auto | incident (const Line &other) const -> bool |
| Check incidence with the dual object. | |
| constexpr auto | meet (const Point &rhs) const -> Line |
| Meet (intersection) with another point to form a line. | |
Static Public Member Functions | |
| static constexpr auto | parametrize (const int64_t &lambda_val, const Point &pt_p, const int64_t &mu_val, const Point &pt_q) -> Point |
| Homogeneous parametrization of point or line. | |
Public Attributes | |
| std::array< int64_t, 3 > | coord |
Friends | |
| constexpr auto | operator== (const Point &lhs, const Point &rhs) -> bool |
| Equal to. | |
| constexpr auto | operator!= (const Point &lhs, const Point &rhs) -> bool |
| Not equal to. | |
Projective Point/Line (int64_t specialization)
| Point | |
| Line |
| using PgObject< Point, Line >::Dual = Line |
|
inlineexplicitconstexpr |
Construct a new Pg Object object.
| [in] | coord | Homogeneous coordinate |
|
inlineconstexpr |
Return the dual object (auxiliary line/point).
|
inlineconstexpr |
Dot product with the dual object.
\[ a \cdot b = a_x b_x + a_y b_y + a_z b_z \]
| [in] | other |
|
inlineconstexpr |
Check incidence with the dual object.
| [in] | other |
|
inlineconstexpr |
Meet (intersection) with another point to form a line.
\[ l = p \times q \]
| [in] | rhs |
|
inlinestaticconstexpr |
Homogeneous parametrization of point or line.
\[ \lambda p + \mu q \]
| [in] | lambda | |
| [in] | pt_p | |
| [in] | mu | |
| [in] | pt_q |
|
friend |
Not equal to.
| [in] | lhs | |
| [in] | rhs |
|
friend |
Equal to.
| [in] | lhs | |
| [in] | rhs |
| std::array<int64_t, 3> PgObject< Point, Line >::coord |