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

Representation of the boundary of the union of balls. More...

#include <Union_of_balls_boundary_3_data_structure.hpp>

Public Types

typedef T_Union_of_balls_boundary_3_data_structure< WeightedAlphaComplex3, IS_CCW, HalfedgeDSBase > Self
 The class itself. More...
 
typedef WeightedAlphaComplex3 Weighted_alpha_complex_3
 $\alpha$-complex representing the input set of 3D balls. More...
 

Constructors

 T_Union_of_balls_boundary_3_data_structure (void)
 
template<class InputIterator >
 T_Union_of_balls_boundary_3_data_structure (InputIterator begin, InputIterator end, const FT &alpha=0)
 
 T_Union_of_balls_boundary_3_data_structure (WeightedAlphaComplex3 &Ac)
 

Destructors

 ~T_Union_of_balls_boundary_3_data_structure (void)
 

Accessors

const WeightedAlphaComplex3 & get_alpha_complex (void) const
 
unsigned get_number_of_holes (Face_handle face) const
 
unsigned get_number_of_connected_components_of_faces (void) const
 
const Face_connected_component & get_connected_component_of_faces (unsigned i) const
 
unsigned get_number_of_exterior_connected_components_of_faces (void) const
 
const Face_connected_component & get_exterior_connected_component_of_faces (unsigned i) const
 
unsigned get_number_of_interior_connected_components_of_faces (void) const
 
const Face_connected_component & get_interior_connected_component_of_faces (unsigned i) const
 
unsigned get_number_of_cavities (void) const
 
unsigned get_number_of_connected_components_of_faces_of_cavity (unsigned i) const
 

Modifiers

void set_alpha_complex (WeightedAlphaComplex3 &Ac)
 
template<class InputIterator >
void set_alpha_complex (InputIterator begin, InputIterator end, const FT &alpha=0)
 
Vertex_handle vertices_push_back (const typename WeightedAlphaComplex3::Facet &facet, bool is_degenerated)
 
Halfedge_handle edges_push_back (const typename WeightedAlphaComplex3::Edge &edge, bool is_degenerated)
 
Face_handle faces_push_back (typename WeightedAlphaComplex3::Vertex_handle vertex, bool is_degenerated)
 
void insert_hole (Face_handle face, Halfedge_handle halfedge)
 
void insert_new_connected_component (void)
 
void push_back_face_in_connected_component (Face_handle face)
 
void push_back_exterior_connected_component (unsigned i)
 
void push_back_interior_connected_component (unsigned i)
 
void add_new_cavity (unsigned i)
 
void add_cell_to_cavity_of_ith_cc_of_faces (typename WeightedAlphaComplex3::Cell_handle c, unsigned i)
 
void add_interior_connected_component_to_cavity (unsigned i, unsigned j)
 

Queries

bool is_internal_alpha_complex (void) const
 
bool is_counter_clockwise_oriented (void) const
 
bool is_counter_clockwise_oriented (Halfedge_handle hds_e) const
 
template<class SphericalKernel3 >
SphericalKernel3::Circular_arc_point_3 get_point (Vertex_handle v) const
 
template<class SphericalKernel3 >
SphericalKernel3::Circle_3 get_supporting_circle (Halfedge_handle h) const
 
template<class SphericalKernel3 >
SphericalKernel3::Circular_arc_3 get_circular_arc (Halfedge_handle h) const
 
template<class SphericalKernel3 >
SphericalKernel3::Sphere_3 get_supporting_sphere (Face_handle f) const
 
bool is_connected_component_of_faces_bounding_cavity (unsigned i, int j) const
 
bool is_cell_in_cavity (typename WeightedAlphaComplex3::Cell_handle c, unsigned i) const
 

Traversals

Hole_leader_iterator holes_begin (Face_handle face) const
 
Hole_leader_iterator holes_end (Face_handle face) const
 
Face_connected_component_vector_iterator connected_components_of_faces_begin (void) const
 
Face_connected_component_vector_iterator connected_components_of_faces_end (void) const
 

Detailed Description

template<class WeightedAlphaComplex3, bool IS_CCW = true, class HalfedgeDSBase = CGAL::HalfedgeDS_vector<typename WeightedAlphaComplex3::Geom_traits::Kernel, T_Union_of_balls_boundary_3_items<WeightedAlphaComplex3> >>
class SBL::GT::T_Union_of_balls_boundary_3_data_structure< WeightedAlphaComplex3, IS_CCW, HalfedgeDSBase >

Representation of the boundary of the union of balls.

Representation of the boundary of the union of balls.

Template Parameters
WeightedAlphaComplex3A Model of the 3D Weighted $\alpha$-complex of the CGAL Library.
IS_CCWTag allowing to orientate in CW or CCW the sense of the half-edges.
HalfedgeDSBaseBase data structure for the boundary of union of balls.

Member Typedef Documentation

◆ Self

typedef T_Union_of_balls_boundary_3_data_structure<WeightedAlphaComplex3, IS_CCW, HalfedgeDSBase> Self

The class itself.

◆ Weighted_alpha_complex_3

typedef WeightedAlphaComplex3 Weighted_alpha_complex_3

$\alpha$-complex representing the input set of 3D balls.