ProjGeom 1.0.11
Loading...
Searching...
No Matches
Namespaces | Functions
pg_common.hpp File Reference
#include <array>
#include <tuple>
#include "common_concepts.h"
Include dependency graph for pg_common.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  fun
 

Functions

template<Ring _K>
auto fun::cross0 (const std::array< _K, 3 > &v_a, const std::array< _K, 3 > &v_b) -> _K
 1st term of Cross product (yz-plane projection)
 
template<Ring _K>
auto fun::cross1 (const std::array< _K, 3 > &v_a, const std::array< _K, 3 > &v_b) -> _K
 2nd term of Cross product (xz-plane projection)
 
template<Ring _K>
auto fun::cross2 (const std::array< _K, 3 > &v_a, const std::array< _K, 3 > &v_b) -> _K
 3rd term of Cross product (xy-plane projection)
 
template<typename Point >
requires Ring<Value_type<Point>>
auto fun::cross (const Point &v_a, const Point &v_b) -> std::array< Value_type< Point >, 3 >
 Cross product in homogeneous 3D coordinates.
 
template<Ring _K>
auto fun::dot_c (const std::array< _K, 3 > &v_a, const std::array< _K, 3 > &v_b) -> _K
 Dot product (full 3-component)
 
template<Ring _T, Ring _K>
auto fun::plucker_c (const _T &lambda_val, const std::array< _K, 3 > &v_a, const _T &mu_val, const std::array< _K, 3 > &v_b) -> std::array< _K, 3 >
 generic Plücker linear combination
 
template<Ring _K>
auto fun::dot1 (const std::array< _K, 3 > &v_a, const std::array< _K, 3 > &v_b) -> _K
 Dot product of the (x,y)-components of two vectors (affine part)
 
template<Ring _K>
auto fun::dot2 (const std::array< _K, 3 > &v_a, const std::array< _K, 3 > &v_b) -> _K
 Dot product of the (0,2)-component of two vectors.
 
template<typename T >
constexpr auto fun::sq (const T &a)
 Square function.
 
template<typename Value , typename Point >
requires Ring<Value>
constexpr auto fun::parametrize (const Value &lambda_val, const Point &pt_p, const Value &mu_val, const Point &pt_q) -> Point
 Homogeneous parametrization of point or line (free function)
 

Detailed Description

This is a C++ Library header.