\( \newcommand{\E}{\mathrm{E}} \) \( \newcommand{\A}{\mathrm{A}} \) \( \newcommand{\R}{\mathrm{R}} \) \( \newcommand{\N}{\mathrm{N}} \) \( \newcommand{\Q}{\mathrm{Q}} \) \( \newcommand{\Z}{\mathrm{Z}} \) \( \def\ccSum #1#2#3{ \sum_{#1}^{#2}{#3} } \def\ccProd #1#2#3{ \sum_{#1}^{#2}{#3} }\)
CGAL 4.10.1 - 2D and 3D Linear Geometry Kernel
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
CGAL::compare_dihedral_angle()

Functions

template<typename Kernel >
Comparison_result CGAL::compare_dihedral_angle (const CGAL::Point_3< Kernel > &a1, const CGAL::Point_3< Kernel > &b1, const CGAL::Point_3< Kernel > &c1, const CGAL::Point_3< Kernel > &d1, const Kernel::FT &cosine)
 compares the dihedral angles \( \theta_1\) and \( \theta_2\), where \( \theta_1\) is the dihedral angle, in \( [0, \pi]\), of the tetrahedron (a1, b1, c1, d1) at the edge (a1, b1), and \( \theta_2\) is the angle in \( [0, \pi]\) such that \( cos(\theta_2) = cosine\). More...
 
template<typename Kernel >
Comparison_result CGAL::compare_dihedral_angle (const CGAL::Point_3< Kernel > &a1, const CGAL::Point_3< Kernel > &b1, const CGAL::Point_3< Kernel > &c1, const CGAL::Point_3< Kernel > &d1, const CGAL::Point_3< Kernel > &a2, const CGAL::Point_3< Kernel > &b2, const CGAL::Point_3< Kernel > &c2, const CGAL::Point_3< Kernel > &d2)
 compares the dihedral angles \( \theta_1\) and \( \theta_2\), where \( \theta_i\) is the dihedral angle in the tetrahedron (a_i, b_i, c_i, d_i) at the edge (a_i, b_i). More...
 
template<typename Kernel >
Comparison_result CGAL::compare_dihedral_angle (const CGAL::Vector_3< Kernel > &u1, const CGAL::Vector_3< Kernel > &v1, const CGAL::Vector_3< Kernel > &w1, const Kernel::FT &cosine)
 compares the dihedral angles \( \theta_1\) and \( \theta_2\), where \( \theta_1\) is the dihedral angle, in \( [0, \pi]\), between the vectorial planes defined by (u_1, v_1) and (u_1, w_1), and \( \theta_2\) is the angle in \( [0, \pi]\) such that \( cos(\theta_2) = cosine\). More...
 
template<typename Kernel >
Comparison_result CGAL::compare_dihedral_angle (const CGAL::Vector_3< Kernel > &u1, const CGAL::Vector_3< Kernel > &v1, const CGAL::Vector_3< Kernel > &w1, const CGAL::Vector_3< Kernel > &u2, const CGAL::Vector_3< Kernel > &v2, const CGAL::Vector_3< Kernel > &w2)
 compares the dihedral angles \( \theta_1\) and \( \theta_2\), where \( \theta_i\) is the dihedral angle between the vectorial planes defined by (u_i, v_i) and (u_i, w_i). More...
 

Function Documentation

template<typename Kernel >
Comparison_result CGAL::compare_dihedral_angle ( const CGAL::Point_3< Kernel > &  a1,
const CGAL::Point_3< Kernel > &  b1,
const CGAL::Point_3< Kernel > &  c1,
const CGAL::Point_3< Kernel > &  d1,
const Kernel::FT cosine 
)

compares the dihedral angles \( \theta_1\) and \( \theta_2\), where \( \theta_1\) is the dihedral angle, in \( [0, \pi]\), of the tetrahedron (a1, b1, c1, d1) at the edge (a1, b1), and \( \theta_2\) is the angle in \( [0, \pi]\) such that \( cos(\theta_2) = cosine\).

The result is the same as compare_dihedral_angle(b1-a1, c1-a1, d1-a1, cosine).

Precondition
a1, b1, c1 are not collinear, and a1, b1, d1 are not collinear.

#include <CGAL/Kernel/global_functions.h>

template<typename Kernel >
Comparison_result CGAL::compare_dihedral_angle ( const CGAL::Point_3< Kernel > &  a1,
const CGAL::Point_3< Kernel > &  b1,
const CGAL::Point_3< Kernel > &  c1,
const CGAL::Point_3< Kernel > &  d1,
const CGAL::Point_3< Kernel > &  a2,
const CGAL::Point_3< Kernel > &  b2,
const CGAL::Point_3< Kernel > &  c2,
const CGAL::Point_3< Kernel > &  d2 
)

compares the dihedral angles \( \theta_1\) and \( \theta_2\), where \( \theta_i\) is the dihedral angle in the tetrahedron (a_i, b_i, c_i, d_i) at the edge (a_i, b_i).

These two angles are computed in \( [0, \pi]\). The result is the same as compare_dihedral_angle(b1-a1, c1-a1, d1-a1, b2-a2, c2-a2, d2-a2).

Precondition
For \( i \in\{1,2\}\), a_i, b_i, c_i are not collinear, and a_i, b_i, d_i are not collinear.

#include <CGAL/Kernel/global_functions.h>

template<typename Kernel >
Comparison_result CGAL::compare_dihedral_angle ( const CGAL::Vector_3< Kernel > &  u1,
const CGAL::Vector_3< Kernel > &  v1,
const CGAL::Vector_3< Kernel > &  w1,
const Kernel::FT cosine 
)

compares the dihedral angles \( \theta_1\) and \( \theta_2\), where \( \theta_1\) is the dihedral angle, in \( [0, \pi]\), between the vectorial planes defined by (u_1, v_1) and (u_1, w_1), and \( \theta_2\) is the angle in \( [0, \pi]\) such that \( cos(\theta_2) = cosine\).

Precondition
u_1 and v_1 are not collinear, and u_1 and w_1 are not collinear.

#include <CGAL/Kernel/global_functions.h>

template<typename Kernel >
Comparison_result CGAL::compare_dihedral_angle ( const CGAL::Vector_3< Kernel > &  u1,
const CGAL::Vector_3< Kernel > &  v1,
const CGAL::Vector_3< Kernel > &  w1,
const CGAL::Vector_3< Kernel > &  u2,
const CGAL::Vector_3< Kernel > &  v2,
const CGAL::Vector_3< Kernel > &  w2 
)

compares the dihedral angles \( \theta_1\) and \( \theta_2\), where \( \theta_i\) is the dihedral angle between the vectorial planes defined by (u_i, v_i) and (u_i, w_i).

These two angles are computed in \( [0, \pi]\).

Precondition
For \( i \in\{1,2\}\), u_i and v_i are not collinear, and u_i and w_i are not collinear.

#include <CGAL/Kernel/global_functions.h>