Public Types | Public Member Functions | Protected Member Functions

OpenTissue::aabb_tree::GraphConverter< graph_type > Class Template Reference

#include <aabb_tree_graph_converter.h>

List of all members.

Public Types

typedef graph_type::geometry_type geometry_type
typedef graph_type::volume_type volume_type
typedef graph_type::node_ptr_type node_ptr

Public Member Functions

template<typename mesh_type , typename vertex_data_binder >
void run (mesh_type &mesh, graph_type &graph, vertex_data_binder &binder)

Protected Member Functions

template<typename face_type , typename halfedge_type , typename face_ptr_queue , typename lookup_map >
void visist_connection (face_type *face, halfedge_type *edge, face_ptr_queue &Q, graph_type &graph, lookup_map &lookup)

template<typename graph_type>
class OpenTissue::aabb_tree::GraphConverter< graph_type >


Member Typedef Documentation

template<typename graph_type >
typedef graph_type::geometry_type OpenTissue::aabb_tree::GraphConverter< graph_type >::geometry_type
template<typename graph_type >
typedef graph_type::node_ptr_type OpenTissue::aabb_tree::GraphConverter< graph_type >::node_ptr
template<typename graph_type >
typedef graph_type::volume_type OpenTissue::aabb_tree::GraphConverter< graph_type >::volume_type

Member Function Documentation

template<typename graph_type >
template<typename mesh_type , typename vertex_data_binder >
void OpenTissue::aabb_tree::GraphConverter< graph_type >::run ( mesh_type mesh,
graph_type &  graph,
vertex_data_binder &  binder 
) [inline]

Run Mesh to Graph Conversion Method.

Parameters:
mesh The input mesh that should be converted to a graph data structure, that can be used for bottom-up construction.
graph Upon return this argument holds the generated graph.
binder A user-specified functor that is used to look up the vertex_data that should be bound to each triangle vertex. This could in fact be an identity-mapping. However in some cases a mesh would be coupled to for instance a particle system and it would make sense to bind the particles as the vertices of the triangles.

< Internally used data structure. Needed for looking up graph nodes corresponding to mesh faces.

template<typename graph_type >
template<typename face_type , typename halfedge_type , typename face_ptr_queue , typename lookup_map >
void OpenTissue::aabb_tree::GraphConverter< graph_type >::visist_connection ( face_type *  face,
halfedge_type *  edge,
face_ptr_queue &  Q,
graph_type &  graph,
lookup_map &  lookup 
) [inline, protected]

Auxiliary Method. This method is used to visit neighboring faces of a given face.

Parameters:
face The current face
edge An edge to the neighboring face we want to visit
Q A queue holding all faces that we wish to visit.
graph The graph data structure that is being constructed while we visit edges to neighboring faces.
lookup A graph node lookup table. This is used to find a graph node that correspond to a given mesh face.

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