Namespaces | Classes | Typedefs | Functions | Variables

OpenMesh Namespace Reference

Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels and mesh traits. More...

Namespaces

namespace  Attributes
 

This namespace holds per item attributes like normal/color.


namespace  Concepts
 

Descriptions of the concepts used in OpenMesh.


namespace  Decimater
 

Software related to mesh decimation.


namespace  GenProg
 

Utilities for generative programming.


namespace  IO
 

This namespace contains functions for reading and writing polygonal meshes and a list of supported file formats.


namespace  Iterators
 

Contains all mesh iterators and circulators.


namespace  Kernel_OSG
 

In this namespace resides the OpenSG integration of OpenMesh.


namespace  Utils
 

Collection of little utility classes and helpers.


namespace  VDPM
 

Software related to view dependent progressive meshes.


Classes

class  SoOpenMeshNodeT
class  VDPMSynthesizerViewerWidget
class  LoopSchemeMaskT
 implements cache for the weights of the original Loop scheme supported:

  • vertex projection rule on the next level
  • vertex projection rule on the limit surface
  • vertex projection rule on the k-th (level) step (Barthe, Kobbelt'2003)
  • vertex tangents on the limit surface
More...
struct  ArrayItems
 Definition of mesh items for use in the ArrayKernel. More...
class  ArrayKernel
 Mesh kernel using arrays for mesh item storage. More...
class  AttribKernelT
 The attribute kernel adds all standard properties to the kernel. More...
class  BaseKernel
 This class provides the basic property management like adding/removing properties and access to properties. More...
class  BaseMesh
 Base class for all meshes. More...
struct  FinalMeshItemsT
 Definition of the mesh entities (items). More...
class  BaseHandle
 Base class for all handle types. More...
struct  VertexHandle
 Handle for a vertex entity. More...
struct  HalfedgeHandle
 Handle for a halfedge entity. More...
struct  EdgeHandle
 Handle for a edge entity. More...
struct  FaceHandle
 Handle for a face entity. More...
class  PolyConnectivity
 Connectifity Class for polygonal meshes. More...
struct  PolyMesh_ArrayKernel_GeneratorT
 Helper class to build a PolyMesh-type. More...
class  PolyMesh_ArrayKernelT
 Polygonal mesh based on the ArrayKernel. More...
class  PolyMeshT
 Base type for a polygonal mesh. More...
class  DefaultTraits
 Base class for all traits. More...
struct  MergeTraits
 Helper class to merge two mesh traits. More...
class  TriConnectivity
 Connectifity Class for Triangle Meshes. More...
struct  TriMesh_ArrayKernel_GeneratorT
 Helper class to create a TriMesh-type based on ArrayKernelT. More...
class  TriMesh_ArrayKernelT
 Triangle mesh based on the ArrayKernel. More...
class  TriMeshT
 Base type for a triangle mesh. More...
class  basic_multiplex_target
class  multiplex_target
class  multiplex_streambuf
class  mostream
 This class provides streams that can easily be multiplexed (using the connect() method) and toggled on/off (using enable() / disable()). More...
class  newClass
 /.../newClass.hh> More...
class  newClassT
 /.../newClassT.hh> More...
class  AutoPropertyHandleT
class  BaseProperty
 Abstract class defining the basic interface of a dynamic property. More...
struct  color_caster
 Cast one color vector to another. More...
struct  color_caster< Vec3uc, Vec3f >
struct  color_caster< Vec3uc, Vec4f >
struct  color_caster< Vec4uc, Vec3f >
struct  color_caster< Vec4uc, Vec4f >
struct  color_caster< Vec4uc, Vec3uc >
struct  color_caster< Vec3f, Vec3uc >
struct  color_caster< Vec3f, Vec4uc >
struct  color_caster< Vec4f, Vec3uc >
struct  color_caster< Vec4f, Vec4uc >
struct  color_caster< dst_t, dst_t >
class  Endian
 Determine byte order of host system. More...
class  PropertyT
 Default property class for any type T. More...
class  PropertyT< bool >
class  PropertyT< std::string >
struct  BasePropHandleT
 Base property handle. More...
struct  VPropHandleT
 Handle representing a vertex property. More...
struct  HPropHandleT
 Handle representing a halfedge property. More...
struct  EPropHandleT
 Handle representing an edge property. More...
struct  FPropHandleT
 Handle representing a face property. More...
struct  MPropHandleT
 Handle representing a mesh property. More...
class  PropertyContainer
 A a container for properties. More...
class  SingletonT
 A simple singleton template. More...
struct  vector_caster
struct  vector_caster< dst_t, dst_t >
struct  vector_traits
 Helper class providing information about a vector type. More...
struct  color_caster< osg::Color3ub, osg::Color3f >
 Helper struct. More...
struct  color_caster< osg::Color3f, osg::Color3ub >
 Helper struct. More...
struct  vector_traits< osg::Pnt4f >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Pnt3f >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Pnt2f >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Vec4f >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Vec3f >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Vec2f >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Pnt4d >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Pnt3d >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Pnt2d >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Vec4d >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Vec3d >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Vec4ub >
 Vector traits for OpenSG vector type. More...
struct  vector_traits< osg::Color3ub >
 Vector traits for OpenSG color type. More...
struct  vector_traits< osg::Color4ub >
 Vector traits for OpenSG color type. More...
struct  vector_traits< osg::Color3f >
 Vector traits for OpenSG color type. More...
struct  vector_traits< osg::Color4f >
 Vector traits for OpenSG color type. More...
struct  vector_caster< osg::Vec3f, osg::Pnt3f >
 convert Pnt3f to Vec3f More...
struct  vector_caster< osg::Vec4f, osg::Pnt4f >
 convert Pnt4f to Vec4f More...
struct  vector_caster< osg::Vec3d, osg::Pnt3d >
 convert Pnt3d to Vec3d More...
struct  vector_caster< osg::Vec4d, osg::Pnt4d >
 convert Pnt4d to Vec4d More...
class  StripifierT
 This class decomposes a triangle mesh into several triangle strips. More...

Typedefs

typedef TriMesh_ArrayKernelT
< VDPM::MeshTraits
VDPMMesh
typedef MeshViewerWidgetT
< VDPMMesh
MeshViewerWidget
typedef LoopSchemeMaskT
< double, 100 > 
LoopSchemeMaskDouble
typedef SingletonT
< LoopSchemeMaskDouble
LoopSchemeMaskDoubleSingleton

Functions

void glVertex (const OpenMesh::Vec3f &_v)
void glVertex (const OpenMesh::Vec3d &_v)
void glNormal (const OpenMesh::Vec3f &_n)
void glNormal (const OpenMesh::Vec3d &_n)
template<class Vec >
SbVec3f sbvec3f (const Vec &_v)
template<class T , typename Real >
bool is_zero (const T &_a, Real _eps)
 comparison operators with user-selected precision control
template<class T1 , class T2 , typename Real >
bool is_eq (const T1 &a, const T2 &b, Real _eps)
template<class T1 , class T2 , typename Real >
bool is_gt (const T1 &a, const T2 &b, Real _eps)
template<class T1 , class T2 , typename Real >
bool is_ge (const T1 &a, const T2 &b, Real _eps)
template<class T1 , class T2 , typename Real >
bool is_lt (const T1 &a, const T2 &b, Real _eps)
template<class T1 , class T2 , typename Real >
bool is_le (const T1 &a, const T2 &b, Real _eps)
float eps__ (float)
double eps__ (double)
template<class T >
bool is_zero (const T &a)
template<class T1 , class T2 >
bool is_eq (const T1 &a, const T2 &b)
template<class T1 , class T2 >
bool is_gt (const T1 &a, const T2 &b)
template<class T1 , class T2 >
bool is_ge (const T1 &a, const T2 &b)
template<class T1 , class T2 >
bool is_lt (const T1 &a, const T2 &b)
template<class T1 , class T2 >
bool is_le (const T1 &a, const T2 &b)
template<class T >
sane_aarg (T _aarg)
 Trigonometry/angles - related.
template<class T >
angle (T _cos_angle, T _sin_angle)
 returns the angle determined by its cos and the sign of its sin result is positive if the angle is in [0:pi] and negative if it is in [pi:2pi]
template<class T >
positive_angle (T _angle)
template<class T >
positive_angle (T _cos_angle, T _sin_angle)
template<class T >
deg_to_rad (const T &_angle)
template<class T >
rad_to_deg (const T &_angle)
double log_ (double _value)
template<class Traits >
TriMesh_ArrayKernelT< Traits > & TRIMESH_CAST (PolyMesh_ArrayKernelT< Traits > &_poly_mesh)
template<class Traits >
const TriMesh_ArrayKernelT
< Traits > & 
TRIMESH_CAST (const PolyMesh_ArrayKernelT< Traits > &_poly_mesh)
template<class Traits >
PolyMesh_ArrayKernelT< Traits > & POLYMESH_CAST (TriMesh_ArrayKernelT< Traits > &_tri_mesh)
template<class Traits >
const PolyMesh_ArrayKernelT
< Traits > & 
POLYMESH_CAST (const TriMesh_ArrayKernelT< Traits > &_tri_mesh)
std::ostream & operator<< (std::ostream &_os, const BaseHandle &_hnd)
 Write handle _hnd to stream _os.
template<class _Mesh , class _PropertyHandle >
void smooth_mesh_property (unsigned int _n_iters, _Mesh &_m, _PropertyHandle _pph)
template<class _Mesh >
void smooth_mesh (_Mesh &_m, uint _n_iters)
Cast vector type to another vector type.

template<typename dst_t , typename src_t >
color_caster< dst_t, src_t >
::return_type 
color_cast (const src_t &_src)
 Cast vector type to another vector type by copying the vector elements.
template<typename src_t , typename dst_t >
void vector_copy (const src_t &_src, dst_t &_dst, GenProg::Int2Type< 1 >)
 Cast vector type to another vector type by copying the vector elements.
template<typename src_t , typename dst_t >
void vector_copy (const src_t &_src, dst_t &_dst, GenProg::Int2Type< 2 >)
 Cast vector type to another vector type by copying the vector elements.
template<typename src_t , typename dst_t >
void vector_copy (const src_t &_src, dst_t &_dst, GenProg::Int2Type< 3 >)
 Cast vector type to another vector type by copying the vector elements.
template<typename src_t , typename dst_t >
void vector_copy (const src_t &_src, dst_t &_dst, GenProg::Int2Type< 4 >)
 Cast vector type to another vector type by copying the vector elements.
template<typename src_t , typename dst_t >
void vector_copy (const src_t &_src, dst_t &_dst, GenProg::Int2Type< 5 >)
 Cast vector type to another vector type by copying the vector elements.
template<typename src_t , typename dst_t >
void vector_copy (const src_t &_src, dst_t &_dst, GenProg::Int2Type< 6 >)
 Cast vector type to another vector type by copying the vector elements.
template<typename dst_t , typename src_t >
vector_caster< dst_t, src_t >
::return_type 
vector_cast (const src_t &_src)
 Cast vector type to another vector type by copying the vector elements.

osg::Vec3f::ValueType dot (const osg::Vec3f &_v1, const osg::Vec3f &_v2)
 Adapter for osg vector member computing a scalar product.
osg::Vec3f::ValueType dot (const osg::Vec3f &_v1, const osg::Pnt3f &_v2)
 Adapter for osg vector member computing a scalar product.
osg::Vec2f::ValueType dot (const osg::Vec2f &_v1, const osg::Vec2f &_v2)
 Adapter for osg vector member computing a scalar product.
osg::Vec3f cross (const osg::Vec3f &_v1, const osg::Vec3f &_v2)
 Adapter for osg vector member computing a scalar product.

Variables

const float flt_eps__ = (float)1e-05
const double dbl_eps__ = 1e-09

Detailed Description

Contains all the mesh ingredients like the polygonal mesh, the triangle mesh, different mesh kernels and mesh traits.

Martin, 26.12.2004: 1) replaced resize(size()-1) with pop_back(), since the later is more efficient 2) replaced interface_.set_heap_position(entry(0), -1); with reset_heap_position() 3) added const modifier to various functions TODO: in the moment the heap does not conform to the HeapInterface specification, i.e., copies are passed instead of references.

This is especially important for set_heap_position(), where the reference argument is non-const. The specification should be changed to reflect that the heap actually (only?) works when the heap entry is nothing more but a handle. TODO: change the specification of HeapInterface to make less(), greater() and get_heap_position() const. Needs changing DecimaterT. Might break someone's code.


acg pic Project OpenMesh, ©  Computer Graphics Group, RWTH Aachen. Documentation generated using doxygen .