Structural Bioinformatics Library
Template C++ / Python API for developping structural bioinformatics applications.
T_Union_of_balls_medial_axis_3_data_structure< WeightedAlphaComplex3, NTBoundary, HalfedgeDSBase > Class Template Reference

Representation of the medial-axis of the union of balls. More...

#include <Union_of_balls_medial_axis_3_data_structure.hpp>

Public Types

typedef WeightedAlphaComplex3 Weighted_alpha_complex_3
 
typedef HalfedgeDSBase Base
 
typedef T_Union_of_balls_medial_axis_3_data_structure< WeightedAlphaComplex3, NTBoundary, BaseSelf
 
typedef T_Delaunay_triangulation_spherical_traits_3< NTBoundary, typename WeightedAlphaComplex3::Vertex_handle > Delaunay_triangulation_spherical_traits_3
 
typedef CGAL::Delaunay_triangulation_3< Delaunay_triangulation_spherical_traits_3Delaunay_triangulation_3
 
typedef Delaunay_triangulation_spherical_traits_3::Sphere_3 Sphere_3
 

Public Member Functions

template<class UnionOfBallsBoundary3 >
 T_Union_of_balls_medial_axis_3_data_structure (UnionOfBallsBoundary3 &boundary)
 
const WeightedAlphaComplex3 & get_alpha_complex (void) const
 
const Delaunay_triangulation_3get_Delaunay_triangulation (void) const
 
Base::Vertex_handle vertices_push_back (typename WeightedAlphaComplex3::Vertex_handle v, bool is_singular)
 
Base::Vertex_handle vertices_push_back (typename Delaunay_triangulation_3::Cell_handle c)
 
Base::Halfedge_handle edges_push_back (bool is_singular)
 
Base::Face_handle faces_push_back (const typename WeightedAlphaComplex3::Facet &facet)
 
Base::Face_handle faces_push_back (const typename Delaunay_triangulation_3::Edge &edge)
 

Detailed Description

template<class WeightedAlphaComplex3, class NTBoundary = typename CGAL::Exact_predicates_exact_constructions_kernel_with_sqrt::FT, class HalfedgeDSBase = CGAL::HalfedgeDS_default<T_Delaunay_triangulation_spherical_traits_3 <NTBoundary, typename WeightedAlphaComplex3::Vertex_handle>, T_Union_of_balls_medial_axis_3_items <WeightedAlphaComplex3, CGAL::Delaunay_triangulation_3 <T_Delaunay_triangulation_spherical_traits_3 <NTBoundary, typename WeightedAlphaComplex3::Vertex_handle> > > >>
class SBL::GT::T_Union_of_balls_medial_axis_3_data_structure< WeightedAlphaComplex3, NTBoundary, HalfedgeDSBase >

Representation of the medial-axis of the union of balls.

For the moment, I just link the halfedges to the bounding vertices. In the future, it may be important to set the bounding faces, the next and prev of a halfedge, etc...

Template Parameters
WeightedAlphaComplex3A Model of the 3D Weighted $\alpha$-complex of the CGAL Library.
HalfedgeDSBaseBase data structure for the boundary of union of balls.

Member Typedef Documentation

◆ Base

typedef HalfedgeDSBase Base

◆ Delaunay_triangulation_3

◆ Delaunay_triangulation_spherical_traits_3

typedef T_Delaunay_triangulation_spherical_traits_3<NTBoundary, typename WeightedAlphaComplex3::Vertex_handle> Delaunay_triangulation_spherical_traits_3

◆ Self

typedef T_Union_of_balls_medial_axis_3_data_structure<WeightedAlphaComplex3, NTBoundary, Base> Self

◆ Sphere_3

typedef Delaunay_triangulation_spherical_traits_3:: Sphere_3 Sphere_3

◆ Weighted_alpha_complex_3

typedef WeightedAlphaComplex3 Weighted_alpha_complex_3

Constructor & Destructor Documentation

◆ T_Union_of_balls_medial_axis_3_data_structure()

T_Union_of_balls_medial_axis_3_data_structure ( UnionOfBallsBoundary3 &  boundary)
inline

Member Function Documentation

◆ edges_push_back()

T_Union_of_balls_medial_axis_3_data_structure< WeightedAlphaComplex3, NTBoundary, HalfedgeDSBase >::Base::Halfedge_handle edges_push_back ( bool  is_singular)
inline

◆ faces_push_back() [1/2]

T_Union_of_balls_medial_axis_3_data_structure< WeightedAlphaComplex3, NTBoundary, HalfedgeDSBase >::Base::Face_handle faces_push_back ( const typename Delaunay_triangulation_3::Edge &  edge)
inline

◆ faces_push_back() [2/2]

T_Union_of_balls_medial_axis_3_data_structure< WeightedAlphaComplex3, NTBoundary, HalfedgeDSBase >::Base::Face_handle faces_push_back ( const typename WeightedAlphaComplex3::Facet &  facet)
inline

◆ get_alpha_complex()

const WeightedAlphaComplex3 & get_alpha_complex ( void  ) const
inline

◆ get_Delaunay_triangulation()

const T_Union_of_balls_medial_axis_3_data_structure< WeightedAlphaComplex3, NTBoundary, HalfedgeDSBase >::Delaunay_triangulation_3 & get_Delaunay_triangulation ( void  ) const
inline

◆ vertices_push_back() [1/2]

T_Union_of_balls_medial_axis_3_data_structure< WeightedAlphaComplex3, NTBoundary, HalfedgeDSBase >::Base::Vertex_handle vertices_push_back ( typename Delaunay_triangulation_3::Cell_handle  c)
inline

◆ vertices_push_back() [2/2]

T_Union_of_balls_medial_axis_3_data_structure< WeightedAlphaComplex3, NTBoundary, HalfedgeDSBase >::Base::Vertex_handle vertices_push_back ( typename WeightedAlphaComplex3::Vertex_handle  v,
bool  is_singular 
)
inline