MEPP2 Project
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Attributes | List of all members
FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T > Class Template Reference

OpenMesh specialization of the Geometry_traits generic class. For usage refer to Geometry traits documentation . More...

#include <Geometry_traits_openmesh.h>

Collaboration diagram for FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >:
Collaboration graph

Public Types

typedef OpenMesh::PolyMesh_ArrayKernelT< T > Mesh
 
typedef Geometry_traits< Mesh, T > Self
 
typedef Mesh::AttribKernel Kernel
 
typedef Kernel::Normal Vector
 
typedef Kernel::Scalar Scalar
 
typedef CGAL::Exact_predicates_inexact_constructions_kernel CGALKernel
 
typedef CGALKernel::Point_3 Point
 
typedef CGALKernel::Vector_3 CGALVector
 

Public Member Functions

 Geometry_traits (const Mesh &m)
 
Vector unit_normal (const Point &p1, const Point &p2, const Point &p3) const
 
Vector normal (const Point &p1, const Point &p2, const Point &p3) const
 

Static Public Member Functions

template<int D>
static Scalar get (const Point &p)
 Deprecated syntax for coordinate access. Use the get_[x|y|z] versions. More...
 
static Scalar get_x (const Point &p)
 
static Scalar get_y (const Point &p)
 
static Scalar get_z (const Point &p)
 
static Scalar dot_product (const Vector &v1, const Vector &v2)
 
static Vector cross_product (const Vector &v1, const Vector &v2)
 
static Scalar length2 (const Vector &v)
 
static Scalar length (const Vector &v)
 
static Scalar length (const Point &p1, const Point &p2)
 
static Vector normalize (const Vector &v)
 
static Vector add_v (const Vector &v1, const Vector &v2)
 
static Point add_pv (const Point &p, const Vector &v)
 
static Point sub_pv (const Point &p, const Vector &v)
 
static Vector sub_p (const Point &p1, const Point &p2)
 
static Vector sub_v (const Vector &v1, const Vector &v2)
 
static Vector scalar_mult (const Vector &v, Scalar s)
 

Static Public Attributes

static const Vector NULL_VECTOR
 Initialisation of static member NULL_VECTOR of above OpenMesh specialisation. More...
 
static const Point ORIGIN
 Initialisation of static member ORIGIN of above OpenMesh specialisation. More...
 

Protected Attributes

Meshm_mesh
 

Detailed Description

template<typename T>
class FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >

OpenMesh specialization of the Geometry_traits generic class. For usage refer to Geometry traits documentation .

Definition at line 51 of file Geometry_traits_openmesh.h.

Member Typedef Documentation

◆ CGALKernel

template<typename T >
typedef CGAL::Exact_predicates_inexact_constructions_kernel FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::CGALKernel

Definition at line 71 of file Geometry_traits_openmesh.h.

◆ CGALVector

template<typename T >
typedef CGALKernel::Vector_3 FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::CGALVector

Definition at line 73 of file Geometry_traits_openmesh.h.

◆ Kernel

template<typename T >
typedef Mesh::AttribKernel FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Kernel

Definition at line 56 of file Geometry_traits_openmesh.h.

◆ Mesh

template<typename T >
typedef OpenMesh::PolyMesh_ArrayKernelT< T > FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Mesh

Definition at line 54 of file Geometry_traits_openmesh.h.

◆ Point

template<typename T >
typedef CGALKernel::Point_3 FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Point

Definition at line 72 of file Geometry_traits_openmesh.h.

◆ Scalar

template<typename T >
typedef Kernel::Scalar FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Scalar

Definition at line 58 of file Geometry_traits_openmesh.h.

◆ Self

template<typename T >
typedef Geometry_traits< Mesh, T > FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Self

Definition at line 55 of file Geometry_traits_openmesh.h.

◆ Vector

template<typename T >
typedef Kernel::Normal FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Vector

Definition at line 57 of file Geometry_traits_openmesh.h.

Constructor & Destructor Documentation

◆ Geometry_traits()

template<typename T >
FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Geometry_traits ( const Mesh m)
inline

Definition at line 76 of file Geometry_traits_openmesh.h.

Member Function Documentation

◆ add_pv()

template<typename T >
static Point FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::add_pv ( const Point p,
const Vector v 
)
inlinestatic

Definition at line 157 of file Geometry_traits_openmesh.h.

◆ add_v()

template<typename T >
static Vector FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::add_v ( const Vector v1,
const Vector v2 
)
inlinestatic

Definition at line 153 of file Geometry_traits_openmesh.h.

◆ cross_product()

template<typename T >
static Vector FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::cross_product ( const Vector v1,
const Vector v2 
)
inlinestatic

Definition at line 116 of file Geometry_traits_openmesh.h.

◆ dot_product()

template<typename T >
static Scalar FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::dot_product ( const Vector v1,
const Vector v2 
)
inlinestatic

Definition at line 111 of file Geometry_traits_openmesh.h.

◆ get()

template<typename T >
template<int D>
static Scalar FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::get ( const Point p)
inlinestatic

Deprecated syntax for coordinate access. Use the get_[x|y|z] versions.

Definition at line 80 of file Geometry_traits_openmesh.h.

◆ get_x()

template<typename T >
static Scalar FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::get_x ( const Point p)
inlinestatic

Definition at line 85 of file Geometry_traits_openmesh.h.

◆ get_y()

template<typename T >
static Scalar FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::get_y ( const Point p)
inlinestatic

Definition at line 87 of file Geometry_traits_openmesh.h.

◆ get_z()

template<typename T >
static Scalar FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::get_z ( const Point p)
inlinestatic

Definition at line 89 of file Geometry_traits_openmesh.h.

◆ length() [1/2]

template<typename T >
static Scalar FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::length ( const Point p1,
const Point p2 
)
inlinestatic

Definition at line 125 of file Geometry_traits_openmesh.h.

◆ length() [2/2]

template<typename T >
static Scalar FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::length ( const Vector v)
inlinestatic

Definition at line 123 of file Geometry_traits_openmesh.h.

◆ length2()

template<typename T >
static Scalar FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::length2 ( const Vector v)
inlinestatic

Definition at line 121 of file Geometry_traits_openmesh.h.

◆ normal()

template<typename T >
Vector FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::normal ( const Point p1,
const Point p2,
const Point p3 
) const
inline

Definition at line 101 of file Geometry_traits_openmesh.h.

◆ normalize()

template<typename T >
static Vector FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::normalize ( const Vector v)
inlinestatic

Definition at line 140 of file Geometry_traits_openmesh.h.

◆ scalar_mult()

template<typename T >
static Vector FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::scalar_mult ( const Vector v,
Scalar  s 
)
inlinestatic

Definition at line 193 of file Geometry_traits_openmesh.h.

◆ sub_p()

template<typename T >
static Vector FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::sub_p ( const Point p1,
const Point p2 
)
inlinestatic

Definition at line 180 of file Geometry_traits_openmesh.h.

◆ sub_pv()

template<typename T >
static Point FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::sub_pv ( const Point p,
const Vector v 
)
inlinestatic

Definition at line 168 of file Geometry_traits_openmesh.h.

◆ sub_v()

template<typename T >
static Vector FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::sub_v ( const Vector v1,
const Vector v2 
)
inlinestatic

Definition at line 191 of file Geometry_traits_openmesh.h.

◆ unit_normal()

template<typename T >
Vector FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::unit_normal ( const Point p1,
const Point p2,
const Point p3 
) const
inline

Definition at line 91 of file Geometry_traits_openmesh.h.

Member Data Documentation

◆ m_mesh

template<typename T >
Mesh& FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::m_mesh
protected

Definition at line 199 of file Geometry_traits_openmesh.h.

◆ NULL_VECTOR

template<typename T >
const Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Vector FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::NULL_VECTOR
static
Initial value:
=
typename Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >,
T >::Vector(0, 0, 0)

Initialisation of static member NULL_VECTOR of above OpenMesh specialisation.

Definition at line 195 of file Geometry_traits_openmesh.h.

◆ ORIGIN

template<typename T >
const Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Point FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::ORIGIN
static
Initial value:
=
typename Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >,
T >::Point(0, 0, 0)

Initialisation of static member ORIGIN of above OpenMesh specialisation.

Definition at line 196 of file Geometry_traits_openmesh.h.


The documentation for this class was generated from the following file:
FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Vector
Kernel::Normal Vector
Definition: Geometry_traits_openmesh.h:57
FEVV::Geometry_traits< OpenMesh::PolyMesh_ArrayKernelT< T >, T >::Point
CGALKernel::Point_3 Point
Definition: Geometry_traits_openmesh.h:72