template<typename Point, typename Line>
requires ProjectivePlane<Point, Line>
class fun::Involution< Point, Line >
- Template Parameters
-
template<typename Point , typename Line >
| constexpr auto fun::Involution< Point, Line >::operator() |
( |
const Line & |
ln_l | ) |
const -> Line |
|
inlineconstexpr |
Apply the involution to a line.
Returns the image of ln_l under the involution.
\[
l' = \operatorname{parametrize}(c,\; l,\; -2(l \cdot o),\; m)
\]
- Parameters
-
| [in] | ln_l | The line to transform |
- Returns
- Line The transformed line
template<typename Point , typename Line >
| constexpr auto fun::Involution< Point, Line >::operator() |
( |
const Point & |
pt_p | ) |
const -> Point |
|
inlineconstexpr |
Apply the involution to a point.
Returns the image of pt_p under the involution.
\[
p' = \operatorname{parametrize}(c,\; p,\; -2(p \cdot m),\; o)
\]
- Parameters
-
| [in] | pt_p | The point to transform |
- Returns
- Point The transformed point