CGAL 6.0 - Tetrahedral Remeshing
Loading...
Searching...
No Matches
CGAL::Tetrahedral_remeshing::Remeshing_triangulation_3< Gt, Concurrency_tag, Vb, Cb > Class Template Reference

#include <CGAL/Tetrahedral_remeshing/Remeshing_triangulation_3.h>

Inherits from

CGAL::Triangulation_3< typename Traits, typename TDS, typename SLDS >.

Definition

template<typename Gt, typename Concurrency_tag = CGAL::Sequential_tag, typename Vb = Remeshing_vertex_base_3<Gt>, typename Cb = Remeshing_cell_base_3<Gt>>
class CGAL::Tetrahedral_remeshing::Remeshing_triangulation_3< Gt, Concurrency_tag, Vb, Cb >

The class Remeshing_triangulation_3 is a class template which provides a valid triangulation type that can be used as the 3D triangulation input for the tetrahedral remeshing process.

Template Parameters
Gtis the geometric traits class. It has to be a model of the concept RemeshingTriangulationTraits_3.
Concurrency_tagenables sequential versus parallel implementation of the triangulation data structure. Possible values are Sequential_tag (the default), Parallel_tag, and Parallel_if_available_tag.
Vbmust be a model of RemeshingVertexBase_3.
Cbmust be model of RemeshingCellBase_3.
Examples
Tetrahedral_remeshing/tetrahedral_remeshing_example.cpp, Tetrahedral_remeshing/tetrahedral_remeshing_from_mesh.cpp, Tetrahedral_remeshing/tetrahedral_remeshing_of_one_subdomain.cpp, and Tetrahedral_remeshing/tetrahedral_remeshing_with_features.cpp.

Public Types

typedef Vb Remeshing_Vb
 
typedef Cb Remeshing_Cb
 
typedef CGAL::Triangulation_data_structure_3< Remeshing_Vb, Remeshing_Cb, Concurrency_tagTds
 
typedef CGAL::Triangulation_3< Gt, TdsBase
 
- Public Types inherited from CGAL::Triangulation_3< typename Traits, typename TDS, typename SLDS >
enum  Locate_type
 
typedef Traits Geom_traits
 
typedef TDS Triangulation_data_structure
 
typedef SLDS Lock_data_structure
 
typedef Triangulation_data_structure::Vertex::Point Point
 
typedef Geom_traits::Segment_3 Segment
 
typedef Geom_traits::Triangle_3 Triangle
 
typedef Geom_traits::Tetrahedron_3 Tetrahedron
 
typedef Triangulation_data_structure::Vertex Vertex
 
typedef Triangulation_data_structure::Cell Cell
 
typedef Triangulation_data_structure::Facet Facet
 
typedef Triangulation_data_structure::Edge Edge
 
typedef Triangulation_data_structure::Concurrency_tag Concurrency_tag
 
typedef Triangulation_data_structure::Vertex_handle Vertex_handle
 
typedef Triangulation_data_structure::Cell_handle Cell_handle
 
typedef Triangulation_simplex_3< Self > Simplex
 
typedef Triangulation_data_structure::size_type size_type
 
typedef Triangulation_data_structure::difference_type difference_type
 
typedef Triangulation_data_structure::Cell_iterator All_cells_iterator
 
typedef Triangulation_data_structure::Facet_iterator All_facets_iterator
 
typedef Triangulation_data_structure::Edge_iterator All_edges_iterator
 
typedef Triangulation_data_structure::Vertex_iterator All_vertices_iterator
 
typedef unspecified_type Finite_cells_iterator
 
typedef unspecified_type Finite_facets_iterator
 
typedef unspecified_type Finite_edges_iterator
 
typedef unspecified_type Finite_vertices_iterator
 
typedef unspecified_type Point_iterator
 
typedef Triangulation_data_structure::Cell_circulator Cell_circulator
 
typedef Triangulation_data_structure::Facet_circulator Facet_circulator
 
typedef unspecified_type Segment_cell_iterator
 
typedef unspecified_type Segment_simplex_iterator
 
typedef Iterator_range< unspecified_typeAll_cell_handles
 
typedef Iterator_range< All_facets_iteratorAll_facets
 
typedef Iterator_range< All_edges_iteratorAll_edges
 
typedef Iterator_range< unspecified_typeAll_vertex_handles
 
typedef Iterator_range< unspecified_typeFinite_cell_handles
 
typedef Iterator_range< Finite_facets_iteratorFinite_facets
 
typedef Iterator_range< Finite_edges_iteratorFinite_edges
 
typedef Iterator_range< unspecified_typeFinite_vertex_handles
 
typedef Iterator_range< unspecified_typePoints
 
typedef Iterator_range< unspecified_typeSegment_traverser_cell_handles
 
typedef Iterator_range< Segment_simplex_iteratorSegment_traverser_simplices
 

Additional Inherited Members

- Public Member Functions inherited from CGAL::Triangulation_3< typename Traits, typename TDS, typename SLDS >
 Triangulation_3 (const Geom_traits &traits=Geom_traits(), Lock_data_structure *lock_ds=nullptr)
 
 Triangulation_3 (Lock_data_structure *lock_ds=nullptr, const Geom_traits &traits=Geom_traits())
 
 Triangulation_3 (const Triangulation_3 &tr)
 
 Triangulation_3 (InputIterator first, InputIterator last, const Geom_traits &traits=Geom_traits(), Lock_data_structure *lock_ds=nullptr)
 
Triangulation_3operator= (const Triangulation_3 &tr)
 
void swap (Triangulation_3 &tr)
 
void clear ()
 
bool operator== (const Triangulation_3< GT, Tds1 > &t1, const Triangulation_3< GT, Tds2 > &t2)
 
bool operator!= (const Triangulation_3< GT, Tds1 > &t1, const Triangulation_3< GT, Tds2 > &t2)
 
const Geom_traitsgeom_traits () const
 
const Triangulation_data_structuretds () const
 
Triangulation_data_structuretds ()
 
int dimension () const
 
size_type number_of_vertices () const
 
size_type number_of_cells () const
 
Vertex_handle infinite_vertex ()
 
void set_infinite_vertex (Vertex_handle v)
 
Cell_handle infinite_cell () const
 
size_type number_of_facets () const
 
size_type number_of_edges () const
 
size_type number_of_finite_cells () const
 
size_type number_of_finite_facets () const
 
size_type number_of_finite_edges () const
 
Tetrahedron tetrahedron (Cell_handle c) const
 
Triangle triangle (Cell_handle c, int i) const
 
Triangle triangle (const Facet &f) const
 
Segment segment (const Edge &e) const
 
Segment segment (Cell_handle c, int i, int j) const
 
const Pointpoint (Cell_handle c, int i) const
 
const Pointpoint (Vertex_handle v) const
 
bool is_infinite (Vertex_handle v) const
 
bool is_infinite (Cell_handle c) const
 
bool is_infinite (Cell_handle c, int i) const
 
bool is_infinite (const Facet &f) const
 
bool is_infinite (Cell_handle c, int i, int j) const
 
bool is_infinite (const Edge &e) const
 
bool is_vertex (const Point &p, Vertex_handle &v) const
 
bool is_vertex (Vertex_handle v) const
 
bool is_edge (Vertex_handle u, Vertex_handle v, Cell_handle &c, int &i, int &j) const
 
bool is_facet (Vertex_handle u, Vertex_handle v, Vertex_handle w, Cell_handle &c, int &i, int &j, int &k) const
 
bool is_cell (Cell_handle c) const
 
bool is_cell (Vertex_handle u, Vertex_handle v, Vertex_handle w, Vertex_handle x, Cell_handle &c, int &i, int &j, int &k, int &l) const
 
bool is_cell (Vertex_handle u, Vertex_handle v, Vertex_handle w, Vertex_handle x, Cell_handle &c) const
 
bool has_vertex (const Facet &f, Vertex_handle v, int &j) const
 
bool has_vertex (Cell_handle c, int i, Vertex_handle v, int &j) const
 
bool has_vertex (const Facet &f, Vertex_handle v) const
 
bool has_vertex (Cell_handle c, int i, Vertex_handle v) const
 
bool are_equal (Cell_handle c, int i, Cell_handle n, int j) const
 
bool are_equal (const Facet &f, const Facet &g) const
 
bool are_equal (const Facet &f, Cell_handle n, int j) const
 
Cell_handle locate (const Point &query, Cell_handle start=Cell_handle(), bool *could_lock_zone=nullptr) const
 
Cell_handle locate (const Point &query, Vertex_handle hint, bool *could_lock_zone=nullptr) const
 
Cell_handle inexact_locate (const Point &query, Cell_handle start=Cell_handle()) const
 
Cell_handle locate (const Point &query, Locate_type &lt, int &li, int &lj, Cell_handle start=Cell_handle(), bool *could_lock_zone=nullptr) const
 
Cell_handle locate (const Point &query, Locate_type &lt, int &li, int &lj, Vertex_handle hint, bool *could_lock_zone=nullptr) const
 
Bounded_side side_of_cell (const Point &p, Cell_handle c, Locate_type &lt, int &li, int &lj) const
 
Bounded_side side_of_facet (const Point &p, const Facet &f, Locate_type &lt, int &li, int &lj) const
 
Bounded_side side_of_facet (const Point &p, Cell_handle c, Locate_type &lt, int &li, int &lj) const
 
Bounded_side side_of_edge (const Point &p, const Edge &e, Locate_type &lt, int &li) const
 
Bounded_side side_of_edge (const Point &p, Cell_handle c, Locate_type &lt, int &li) const
 
bool flip (Edge e)
 
bool flip (Cell_handle c, int i, int j)
 
void flip_flippable (Edge e)
 
void flip_flippable (Cell_handle c, int i, int j)
 
bool flip (Facet f)
 
bool flip (Cell_handle c, int i)
 
void flip_flippable (Facet f)
 
void flip_flippable (Cell_handle c, int i)
 
Vertex_handle insert (const Point &p, Cell_handle start=Cell_handle())
 
Vertex_handle insert (const Point &p, Vertex_handle hint)
 
Vertex_handle insert (const Point &p, Locate_type lt, Cell_handle loc, int li, int lj)
 
std::ptrdiff_t insert (PointInputIterator first, PointInputIterator last)
 
std::ptrdiff_t insert (PointWithInfoInputIterator first, PointWithInfoInputIterator last)
 
Vertex_handle insert_in_cell (const Point &p, Cell_handle c)
 
Vertex_handle insert_in_facet (const Point &p, const Facet &f)
 
Vertex_handle insert_in_facet (const Point &p, Cell_handle c, int i)
 
Vertex_handle insert_in_edge (const Point &p, const Edge &e)
 
Vertex_handle insert_in_edge (const Point &p, Cell_handle c, int i, int j)
 
Vertex_handle insert_outside_convex_hull (const Point &p, Cell_handle c)
 
Vertex_handle insert_outside_affine_hull (const Point &p)
 
Vertex_handle insert_in_hole (const Point &p, CellIt cell_begin, CellIt cell_end, Cell_handle begin, int i)
 
Vertex_handle insert_in_hole (const Point &p, CellIt cell_begin, CellIt cell_end, Cell_handle begin, int i, Vertex_handle newv)
 
Finite_vertices_iterator finite_vertices_begin () const
 
Finite_vertices_iterator finite_vertices_end () const
 
Finite_edges_iterator finite_edges_begin () const
 
Finite_edges_iterator finite_edges_end () const
 
Finite_facets_iterator finite_facets_begin () const
 
Finite_facets_iterator finite_facets_end () const
 
Finite_cells_iterator finite_cells_begin () const
 
Finite_cells_iterator finite_cells_end () const
 
All_vertices_iterator all_vertices_begin () const
 
All_vertices_iterator all_vertices_end () const
 
All_edges_iterator all_edges_begin () const
 
All_edges_iterator all_edges_end () const
 
All_facets_iterator all_facets_begin () const
 
All_facets_iterator all_facets_end () const
 
All_cells_iterator all_cells_begin () const
 
All_cells_iterator all_cells_end () const
 
Point_iterator points_begin () const
 
Point_iterator points_end () const
 
All_cell_handles all_cell_handles () const
 
All_facets all_facets () const
 
All_edges all_edges () const
 
All_vertex_handles all_vertex_handles () const
 
Finite_cell_handles finite_cell_handles () const
 
Finite_facets finite_facets () const
 
Finite_edges finite_edges () const
 
Finite_vertex_handles finite_vertex_handles () const
 
Points points () const
 
std::array< Vertex_handle, 2 > vertices (const Edge &e) const
 
std::array< Vertex_handle, 3 > vertices (const Facet &f) const
 
std::array< Vertex_handle, 4 > vertices (const Cell_handle c) const
 
Segment_traverser_cell_handles segment_traverser_cell_handles () const
 
Segment_traverser_simplices segment_traverser_simplices () const
 
Segment_cell_iterator segment_traverser_cells_begin (Vertex_handle vs, Vertex_handle vt) const
 
Segment_cell_iterator segment_traverser_cells_begin (const Point &ps, const Point &pt, Cell_handle hint=Cell_handle()) const
 
Segment_cell_iterator segment_traverser_cells_end () const
 
Segment_simplex_iterator segment_traverser_simplices_begin (Vertex_handle vs, Vertex_handle vt) const
 
Segment_simplex_iterator segment_traverser_simplices_begin (const Point &ps, const Point &pt, Cell_handle hint=Cell_handle()) const
 
Segment_simplex_iterator segment_traverser_simplices_end () const
 
Cell_circulator incident_cells (Edge e) const
 
Cell_circulator incident_cells (Cell_handle c, int i, int j) const
 
Cell_circulator incident_cells (Edge e, Cell_handle start) const
 
Cell_circulator incident_cells (Cell_handle c, int i, int j, Cell_handle start) const
 
Facet_circulator incident_facets (Edge e) const
 
Facet_circulator incident_facets (Cell_handle c, int i, int j) const
 
Facet_circulator incident_facets (Edge e, Facet start) const
 
Facet_circulator incident_facets (Edge e, Cell_handle start, int f) const
 
Facet_circulator incident_facets (Cell_handle c, int i, int j, Facet start) const
 
Facet_circulator incident_facets (Cell_handle c, int i, int j, Cell_handle start, int f) const
 
OutputIterator incident_cells (Vertex_handle v, OutputIterator cells) const
 
bool try_lock_and_get_incident_cells (Vertex_handle v, std::vector< Cell_handle > &cells) const
 
OutputIterator finite_incident_cells (Vertex_handle v, OutputIterator cells) const
 
OutputIterator incident_facets (Vertex_handle v, OutputIterator facets) const
 
OutputIterator finite_incident_facets (Vertex_handle v, OutputIterator facets) const
 
OutputIterator incident_edges (Vertex_handle v, OutputIterator edges) const
 
OutputIterator finite_incident_edges (Vertex_handle v, OutputIterator edges) const
 
OutputIterator adjacent_vertices (Vertex_handle v, OutputIterator vertices) const
 
OutputIterator finite_adjacent_vertices (Vertex_handle v, OutputIterator vertices) const
 
size_type degree (Vertex_handle v) const
 
int mirror_index (Cell_handle c, int i) const
 
Vertex_handle mirror_vertex (Cell_handle c, int i) const
 
Facet mirror_facet (Facet f) const
 
bool is_valid (bool verbose=false) const
 
bool is_valid (Cell_handle c, bool verbose=false) const
 
istream & operator>> (istream &is, Triangulation_3 &t)
 
ostream & operator<< (ostream &os, const Triangulation_3 &t)
 
std::istream & file_input (std::istream &is, ConvertVertex convert_vertex=ConvertVertex(), ConvertCell convert_cell=ConvertCell())
 
void set_lock_data_structure (Lock_data_structure *lock_ds) const
 
- Static Public Member Functions inherited from CGAL::Triangulation_utils_3
static unsigned int next_around_edge (unsigned int i, unsigned int j)
 
static int vertex_triple_index (const int i, const int j)
 
static unsigned int ccw (unsigned int i)
 
static unsigned int cw (unsigned int i)
 
- Public Attributes inherited from CGAL::Triangulation_3< typename Traits, typename TDS, typename SLDS >
 VERTEX
 
 EDGE
 
 FACET
 
 CELL
 
 OUTSIDE_CONVEX_HULL
 
 OUTSIDE_AFFINE_HULL