template<typename P, typename L = typename P::dual>
fun::persp_euclid_plane class

Template parameters
P
L

Base classes

template<typename _P, typename _L, template<typename P, typename L> class Derived>
struct ck<P, typename P::dual, persp_euclid_plane>

Constructors, destructors, conversion operators

persp_euclid_plane(P Ire, P Iim, L l_infty) constexpr
Construct a new persp euclid plane object.

Public functions

auto l_infty() const -> const L & -> auto constexpr
auto perp(const L& v) const -> P -> auto constexpr
auto is_parallel(const L& l, const L& m) const -> bool -> auto constexpr
auto midpoint(const P& a, const P& b) const -> P -> auto constexpr
auto tri_midpoint(const Triple<P>& tri) const -> auto constexpr
auto omega(const P& x) const -> K -> auto constexpr
auto omega(const L& x) const -> K -> auto constexpr
template<Projective_plane2 _P>
auto measure(const _P& a1, const _P& a2) const -> auto constexpr

Function documentation

template<typename P, typename L>
fun::persp_euclid_plane<P, L>::persp_euclid_plane(P Ire, P Iim, L l_infty) constexpr

Construct a new persp euclid plane object.

Parameters
Ire in
Iim in
l_infty in

template<typename P, typename L>
auto fun::persp_euclid_plane<P, L>::l_infty() const -> const L & constexpr

Returns const L&

template<typename P, typename L>
auto fun::persp_euclid_plane<P, L>::perp(const L& v) const -> P constexpr

Returns P

template<typename P, typename L>
auto fun::persp_euclid_plane<P, L>::is_parallel(const L& l, const L& m) const -> bool constexpr

Parameters
in
in
Returns true

template<typename P, typename L>
auto fun::persp_euclid_plane<P, L>::midpoint(const P& a, const P& b) const -> P constexpr

Parameters
in
in
Returns P

template<typename P, typename L>
auto fun::persp_euclid_plane<P, L>::tri_midpoint(const Triple<P>& tri) const constexpr

Parameters
tri in
Returns auto

template<typename P, typename L>
auto fun::persp_euclid_plane<P, L>::omega(const P& x) const -> K constexpr

Parameters
in
Returns K

template<typename P, typename L>
auto fun::persp_euclid_plane<P, L>::omega(const L& x) const -> K constexpr

Parameters
in
Returns K

template<typename P, typename L> template<Projective_plane2 _P>
auto fun::persp_euclid_plane<P, L>::measure(const _P& a1, const _P& a2) const constexpr

Parameters
a1 in
a2 in
Returns auto