Public Member Functions | Static Public Member Functions

OpenTissue::polymesh::polymesh_core_access Class Reference

#include <polymesh_core_access.h>

List of all members.

Public Member Functions

template<typename halfedge_iterator >
bool unlink (halfedge_iterator h)
template<typename halfedge_iterator , typename vertex_iterator >
bool link (halfedge_iterator h0, vertex_iterator v)

Static Public Member Functions

template<typename feature_iterator , typename handle >
static void set_self_handle (feature_iterator feature, handle self)
template<typename feature_iterator , typename mesh_type >
static void set_owner (feature_iterator feature, mesh_type *owner)
template<typename vertex_iterator , typename halfedge_handle >
static void set_outgoing_halfedge_handle (vertex_iterator v, halfedge_handle h)
template<typename halfedge_iterator , typename halfedge_handle >
static void set_next_handle (halfedge_iterator h, halfedge_handle n)
template<typename halfedge_iterator , typename face_handle >
static void set_face_handle (halfedge_iterator h, face_handle f)
template<typename halfedge_iterator , typename halfedge_handle >
static void set_twin_handle (halfedge_iterator h, halfedge_handle t)
template<typename halfedge_iterator , typename vertex_handle >
static void set_destination_handle (halfedge_iterator h, vertex_handle v)
template<typename face_iterator , typename halfedge_handle >
static void set_border_halfedge_handle (face_iterator f, halfedge_handle h)
template<typename halfedge_iterator , typename edge_handle >
static void set_edge_handle (halfedge_iterator h, edge_handle e)
template<typename edge_iterator , typename halfedge_handle >
static void set_halfedge0_handle (edge_iterator e, halfedge_handle h)
template<typename edge_iterator , typename halfedge_handle >
static void set_halfedge1_handle (edge_iterator e, halfedge_handle h)
template<typename vertex_iterator >
static void adjust_outgoing_halfedge_handle (vertex_iterator v)

Member Function Documentation

template<typename vertex_iterator >
static void OpenTissue::polymesh::polymesh_core_access::adjust_outgoing_halfedge_handle ( vertex_iterator  v  )  [inline, static]

This method makes sure that the outgoing halfedge from a vertex is a boundary half-edge (i.e. it has no incident face) if one exist.

template<typename halfedge_iterator , typename vertex_iterator >
bool OpenTissue::polymesh::polymesh_core_access::link ( halfedge_iterator  h0,
vertex_iterator  v 
) [inline]

Links halfedge into v's topology, such that h points to v.

Parameters:
h0 The halfedge that should have v as its new destination.
v The vertex, must have an empty gap.
Returns:
If succesfully linked the return value is true otherwise it is false.
template<typename face_iterator , typename halfedge_handle >
static void OpenTissue::polymesh::polymesh_core_access::set_border_halfedge_handle ( face_iterator  f,
halfedge_handle  h 
) [inline, static]
template<typename halfedge_iterator , typename vertex_handle >
static void OpenTissue::polymesh::polymesh_core_access::set_destination_handle ( halfedge_iterator  h,
vertex_handle  v 
) [inline, static]
template<typename halfedge_iterator , typename edge_handle >
static void OpenTissue::polymesh::polymesh_core_access::set_edge_handle ( halfedge_iterator  h,
edge_handle  e 
) [inline, static]
template<typename halfedge_iterator , typename face_handle >
static void OpenTissue::polymesh::polymesh_core_access::set_face_handle ( halfedge_iterator  h,
face_handle  f 
) [inline, static]
template<typename edge_iterator , typename halfedge_handle >
static void OpenTissue::polymesh::polymesh_core_access::set_halfedge0_handle ( edge_iterator  e,
halfedge_handle  h 
) [inline, static]
template<typename edge_iterator , typename halfedge_handle >
static void OpenTissue::polymesh::polymesh_core_access::set_halfedge1_handle ( edge_iterator  e,
halfedge_handle  h 
) [inline, static]
template<typename halfedge_iterator , typename halfedge_handle >
static void OpenTissue::polymesh::polymesh_core_access::set_next_handle ( halfedge_iterator  h,
halfedge_handle  n 
) [inline, static]
template<typename vertex_iterator , typename halfedge_handle >
static void OpenTissue::polymesh::polymesh_core_access::set_outgoing_halfedge_handle ( vertex_iterator  v,
halfedge_handle  h 
) [inline, static]
template<typename feature_iterator , typename mesh_type >
static void OpenTissue::polymesh::polymesh_core_access::set_owner ( feature_iterator  feature,
mesh_type owner 
) [inline, static]
template<typename feature_iterator , typename handle >
static void OpenTissue::polymesh::polymesh_core_access::set_self_handle ( feature_iterator  feature,
handle  self 
) [inline, static]
template<typename halfedge_iterator , typename halfedge_handle >
static void OpenTissue::polymesh::polymesh_core_access::set_twin_handle ( halfedge_iterator  h,
halfedge_handle  t 
) [inline, static]
template<typename halfedge_iterator >
bool OpenTissue::polymesh::polymesh_core_access::unlink ( halfedge_iterator  h  )  [inline]

Unlinks a halfedge (and its twin) from its destination vertex.

Parameters:
h The halfedge to be unlinked.
Returns:
If the halfedge was unlinked then the return value is true, otherwise it is false.

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