CGAL 4.4 - 2D and 3D Linear Geometry Kernel
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Kernel::CompareDihedralAngle_3 Concept Reference

Definition

Operations

A model of this concept must provide:

Comparison_result operator() (const K::Point_3 &a1, const K::Point_3 &b1, const K::Point_3 &c1, const K::Point_3 &d1, const K::FT &cosine)
 compares the dihedral angles θ1 and θ2, where θ1 is the dihedral angle, in [0,π], of the tetrahedron (a1,b1,c1,d1) at the edge (a_1, b_1), and θ2 is the angle in [0,π] such that cos(θ2)=cosine. More...
 
Comparison_result operator() (const K::Point_3 &a1, const K::Point_3 &b1, const K::Point_3 &c1, const K::Point_3 &d1, const K::Point_3 &a2, const K::Point_3 &b2, const K::Point_3 &c2, const K::Point_3 &d2)
 compares the dihedral angles θ1 and θ2, where θi is the dihedral angle in the tetrahedron (a_i, b_i, c_i, d_i) at the edge (a_i, b_i). More...
 
Comparison_result operator() (const K::Vector_3 &u1, const K::Vector_3 &v1, const K::Vector_3 &w1, const K::FT &cosine)
 compares the dihedral angles θ1 and θ2, where θ1 is the dihedral angle, in [0,π], between the vectorial planes defined by (u_1, v_1) and (u_1, w_1), and θ2 is the angle in [0,π] such that cos(θ2)=cosine. More...
 
Comparison_result operator() (const K::Vector_3 &u1, const K::Vector_3 &v1, const K::Vector_3 &w1, const K::Vector_3 &u2, const K::Vector_3 &v2, const K::Vector_3 &w2)
 compares the dihedral angles θ1 and θ2, where θi is the dihedral angle between the vectorial planes defined by (u_i, v_i) and (u_i, w_i). More...
 

Member Function Documentation

Comparison_result Kernel::CompareDihedralAngle_3::operator() ( const K::Point_3 &  a1,
const K::Point_3 &  b1,
const K::Point_3 &  c1,
const K::Point_3 &  d1,
const K::FT &  cosine 
)

compares the dihedral angles θ1 and θ2, where θ1 is the dihedral angle, in [0,π], of the tetrahedron (a1,b1,c1,d1) at the edge (a_1, b_1), and θ2 is the angle in [0,π] such that cos(θ2)=cosine.

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

Precondition
a_1, b_1, c_1 are not collinear, and a_1, b_1, d_1 are not collinear.
Comparison_result Kernel::CompareDihedralAngle_3::operator() ( const K::Point_3 &  a1,
const K::Point_3 &  b1,
const K::Point_3 &  c1,
const K::Point_3 &  d1,
const K::Point_3 &  a2,
const K::Point_3 &  b2,
const K::Point_3 &  c2,
const K::Point_3 &  d2 
)

compares the dihedral angles θ1 and θ2, where θ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,π]. The result is the same as operator()(b1-a1, c1-a1, d1-a1, b2-a2, c2-a2, d2-a2).

Precondition
For i{1,2}, a_i, b_i, c_i are not collinear, and a_i, b_i, d_i are not collinear.
Comparison_result Kernel::CompareDihedralAngle_3::operator() ( const K::Vector_3 &  u1,
const K::Vector_3 &  v1,
const K::Vector_3 &  w1,
const K::FT &  cosine 
)

compares the dihedral angles θ1 and θ2, where θ1 is the dihedral angle, in [0,π], between the vectorial planes defined by (u_1, v_1) and (u_1, w_1), and θ2 is the angle in [0,π] such that cos(θ2)=cosine.

Precondition
u_1 and v_1 are not collinear, and u_1 and w_1 are not collinear.
Comparison_result Kernel::CompareDihedralAngle_3::operator() ( const K::Vector_3 &  u1,
const K::Vector_3 &  v1,
const K::Vector_3 &  w1,
const K::Vector_3 &  u2,
const K::Vector_3 &  v2,
const K::Vector_3 &  w2 
)

compares the dihedral angles θ1 and θ2, where θ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,π].

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