Classes | Public Types | Public Member Functions

OpenTissue::trimesh::detail::TMesh< M, V, F, K > Class Template Reference

#include <trimesh_mesh.h>

Inheritance diagram for OpenTissue::trimesh::detail::TMesh< M, V, F, K >:
OpenTissue::trimesh::TriMesh< M, V, F, K > OpenTissue::trimesh::TriMesh< types, SkinVertexTraits< types >, SkinFaceTraits< types >, trimesh::TriMeshArrayKernel > OpenTissue::skinning::LBS< types > OpenTissue::skinning::LBSGPU< types > OpenTissue::skinning::SBS< types > OpenTissue::skinning::SBSGPU< types >

List of all members.

Classes

struct  assign_owner
class  TriMeshFaceVertexCirculator

Public Types

typedef M math_types
typedef V vertex_traits
typedef F face_traits
typedef TMesh< M, V, F, K > mesh_type
typedef TriMeshVertex< mesh_typevertex_type
typedef TriMeshFace< mesh_typeface_type
typedef K< vertex_type, face_typekernel_type
typedef kernel_type::vertex_handle vertex_handle
typedef kernel_type::face_handle face_handle
typedef
kernel_type::vertex_iterator 
vertex_iterator
typedef kernel_type::face_iterator face_iterator
typedef
kernel_type::const_vertex_iterator 
const_vertex_iterator
typedef
kernel_type::const_face_iterator 
const_face_iterator
typedef
TriMeshFaceVertexCirculator
< vertex_type
face_vertex_circulator
typedef
TriMeshFaceVertexCirculator
< vertex_type const > 
const_face_vertex_circulator

Public Member Functions

 TMesh ()
 ~TMesh ()
 TMesh (TMesh const &m)
TMeshoperator= (TMesh const &mesh)
vertex_handle add_vertex ()
template<typename vector3_type >
vertex_handle add_vertex (vector3_type const &coord)
face_handle add_face (vertex_handle const &v0, vertex_handle const &v1, vertex_handle const &v2)
template<typename vertex_handle_iterator >
face_handle add_face (vertex_handle_iterator begin, vertex_handle_iterator end)
bool remove_vertex (vertex_handle const &v)
bool remove_vertex (vertex_iterator v)
bool remove_face (face_handle const &f)
bool remove_face (face_iterator f)

Detailed Description

template<typename M, typename V, typename F, template< typename, typename > class K>
class OpenTissue::trimesh::detail::TMesh< M, V, F, K >

The first template argument is supposed to be a math types type binder. OpenTissue provides a simple basic math type-binder in the math sub-library. See OpenTissue::math::BasicMathTypes<real_type, size_type>

The next two template arguments are supposed to be vertex traits, and face traits. The last template argument is the trimesh kernel type that is supposed to be used.


Member Typedef Documentation

template<typename M, typename V, typename F, template< typename, typename > class K>
typedef kernel_type::const_face_iterator OpenTissue::trimesh::detail::TMesh< M, V, F, K >::const_face_iterator
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef TriMeshFaceVertexCirculator<vertex_type const> OpenTissue::trimesh::detail::TMesh< M, V, F, K >::const_face_vertex_circulator
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef kernel_type::const_vertex_iterator OpenTissue::trimesh::detail::TMesh< M, V, F, K >::const_vertex_iterator
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef kernel_type::face_handle OpenTissue::trimesh::detail::TMesh< M, V, F, K >::face_handle
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef kernel_type::face_iterator OpenTissue::trimesh::detail::TMesh< M, V, F, K >::face_iterator
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef F OpenTissue::trimesh::detail::TMesh< M, V, F, K >::face_traits
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef TriMeshFace<mesh_type> OpenTissue::trimesh::detail::TMesh< M, V, F, K >::face_type
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef TriMeshFaceVertexCirculator<vertex_type> OpenTissue::trimesh::detail::TMesh< M, V, F, K >::face_vertex_circulator
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef K< vertex_type, face_type > OpenTissue::trimesh::detail::TMesh< M, V, F, K >::kernel_type
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef M OpenTissue::trimesh::detail::TMesh< M, V, F, K >::math_types
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef TMesh< M, V, F, K > OpenTissue::trimesh::detail::TMesh< M, V, F, K >::mesh_type
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef kernel_type::vertex_handle OpenTissue::trimesh::detail::TMesh< M, V, F, K >::vertex_handle
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef kernel_type::vertex_iterator OpenTissue::trimesh::detail::TMesh< M, V, F, K >::vertex_iterator
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef V OpenTissue::trimesh::detail::TMesh< M, V, F, K >::vertex_traits
template<typename M, typename V, typename F, template< typename, typename > class K>
typedef TriMeshVertex<mesh_type> OpenTissue::trimesh::detail::TMesh< M, V, F, K >::vertex_type

Constructor & Destructor Documentation

template<typename M, typename V, typename F, template< typename, typename > class K>
OpenTissue::trimesh::detail::TMesh< M, V, F, K >::TMesh (  )  [inline]
template<typename M, typename V, typename F, template< typename, typename > class K>
OpenTissue::trimesh::detail::TMesh< M, V, F, K >::~TMesh (  )  [inline]
template<typename M, typename V, typename F, template< typename, typename > class K>
OpenTissue::trimesh::detail::TMesh< M, V, F, K >::TMesh ( TMesh< M, V, F, K > const &  m  )  [inline, explicit]

Member Function Documentation

template<typename M, typename V, typename F, template< typename, typename > class K>
face_handle OpenTissue::trimesh::detail::TMesh< M, V, F, K >::add_face ( vertex_handle const &  v0,
vertex_handle const &  v1,
vertex_handle const &  v2 
) [inline]
template<typename M, typename V, typename F, template< typename, typename > class K>
template<typename vertex_handle_iterator >
face_handle OpenTissue::trimesh::detail::TMesh< M, V, F, K >::add_face ( vertex_handle_iterator  begin,
vertex_handle_iterator  end 
) [inline]
template<typename M, typename V, typename F, template< typename, typename > class K>
vertex_handle OpenTissue::trimesh::detail::TMesh< M, V, F, K >::add_vertex (  )  [inline]
template<typename M, typename V, typename F, template< typename, typename > class K>
template<typename vector3_type >
vertex_handle OpenTissue::trimesh::detail::TMesh< M, V, F, K >::add_vertex ( vector3_type const &  coord  )  [inline]
template<typename M, typename V, typename F, template< typename, typename > class K>
TMesh& OpenTissue::trimesh::detail::TMesh< M, V, F, K >::operator= ( TMesh< M, V, F, K > const &  mesh  )  [inline]
template<typename M, typename V, typename F, template< typename, typename > class K>
bool OpenTissue::trimesh::detail::TMesh< M, V, F, K >::remove_face ( face_iterator  f  )  [inline]
template<typename M, typename V, typename F, template< typename, typename > class K>
bool OpenTissue::trimesh::detail::TMesh< M, V, F, K >::remove_face ( face_handle const &  f  )  [inline]
template<typename M, typename V, typename F, template< typename, typename > class K>
bool OpenTissue::trimesh::detail::TMesh< M, V, F, K >::remove_vertex ( vertex_iterator  v  )  [inline]
template<typename M, typename V, typename F, template< typename, typename > class K>
bool OpenTissue::trimesh::detail::TMesh< M, V, F, K >::remove_vertex ( vertex_handle const &  v  )  [inline]

The documentation for this class was generated from the following file: