Exterior Product
group ext
(meet.hpp)
The exterior product between two basis elements extinguishes if the two operands share any common index. Otherwise, the element produced is equivalent to the union of the subspaces. A sign flip is introduced if the concatenation of the element indices is an odd permutation of the cyclic basis representation. The exterior product extends to general multivectors by linearity.
Meeting two planes
kln::plane p1{x1, y1, z1, d1};
kln::plane p2{x2, y2, z2, d2};
// l lies at the intersection of p1 and p2.
kln::line l = p1 ^ p2;
Meeting a line and a plane
kln::plane p1{x, y, z, d};
kln::line l2{mx, my, mz, dx, dy, dz};
// p2 lies at the intersection of p1 and l2.
kln::point p2 = p1 ^ l2;
Summary
Members | Descriptions |
---|---|
public line KLN_VEC_CALL operator^ (plane a,plane b) noexcept |
|
public point KLN_VEC_CALL operator^ (plane a,branch b) noexcept |
|
public point KLN_VEC_CALL operator^ (branch b,plane a) noexcept |
|
public point KLN_VEC_CALL operator^ (plane a,ideal_line b) noexcept |
|
public point KLN_VEC_CALL operator^ (ideal_line b,plane a) noexcept |
|
public point KLN_VEC_CALL operator^ (plane a,line b) noexcept |
|
public point KLN_VEC_CALL operator^ (line b,plane a) noexcept |
|
public dual KLN_VEC_CALL operator^ (plane a,point b) noexcept |
|
public dual KLN_VEC_CALL operator^ (point b,plane a) noexcept |
|
public dual KLN_VEC_CALL operator^ (branch a,ideal_line b) noexcept |
|
public dual KLN_VEC_CALL operator^ (ideal_line b,branch a) noexcept |
|
public dual KLN_VEC_CALL operator^ (line a,line b) noexcept |
|
public dual KLN_VEC_CALL operator^ (line a,ideal_line b) noexcept |
|
public dual KLN_VEC_CALL operator^ (ideal_line b,line a) noexcept |
|
public dual KLN_VEC_CALL operator^ (line a,branch b) noexcept |
|
public dual KLN_VEC_CALL operator^ (branch b,line a) noexcept |