Constrained_delaunay_triangulation

Classes

class  class_constrained_delaunay_triangulation
class  Enriched_face_base_2< Gt, Fb >
struct  t_enriched_vertex_base_2
struct  t_face

Files

file  constrained_delaunay_triangulation.cpp
 

This code perfomrs a constrained delaunay triangulation.


file  constrained_delaunay_triangulation.h
 

Header for constrained delaunay triangulation.


file  constrained_delaunay_triangulation_utils.cpp
 

Some utils for the constrained delaunay triangulation code.


Typedefs

typedef CDT::All_faces_iterator All_faces_iterator
typedef
CGAL::Triangulation_hierarchy_2
< CDT1
CDT
typedef
CGAL::Constrained_Delaunay_triangulation_2
< K_exact, TDS, Itag
CDT1
typedef CDT::Face_handle Face_handle
typedef Enriched_face_base_2
< K_exact,
CGAL::Constrained_triangulation_face_base_2
< K_exact > > 
Fb
typedef CDT::Finite_faces_iterator Finite_faces_iterator
typedef
CDT::Finite_vertices_iterator 
Finite_vertices_iterator
typedef CGAL::No_intersection_tag Itag
typedef
CGAL::Exact_predicates_exact_constructions_kernel 
K_exact
typedef CDT::Point Point_2
typedef
CGAL::Triangulation_data_structure_2
< Vb, Fb
TDS
typedef
CGAL::Triangulation_hierarchy_vertex_base_2
< Vbb
Vb
typedef
CGAL::Triangulation_vertex_base_with_info_2
< t_enriched_vertex_base_2,
K_exact
Vbb
typedef CDT::Vertex_handle Vertex_handle1
typedef CDT::Vertex_handle Vertex_handle2
typedef CDT::Vertex_iterator Vertex_iterator

Enumerations

enum  e_vertex_analysis { CAN_ADD = 77, CANNOT_ADD, EXISTS, ERROR }

Functions

int class_constrained_delaunay_triangulation::add_face_manager (double x0, double y0, double z0, float rgb0, double x1, double y1, double z1, float rgb1, double x2, double y2, double z2, float rgb2, float face_weight, int provenience)
int class_constrained_delaunay_triangulation::add_face_to_mesh (double x0, double y0, double z0, float rgb0, double x1, double y1, double z1, float rgb1, double x2, double y2, double z2, float rgb2, float face_weight, int provenience)
int class_constrained_delaunay_triangulation::add_face_to_mesh (CDT::Face_handle fti)
bool class_constrained_delaunay_triangulation::check_if_face_should_be_inserted (double x0, double y0, double z0, float rgb0, double x1, double y1, double z1, float rgb1, double x2, double y2, double z2, float rgb2, float face_weight, int provenience)
int class_constrained_delaunay_triangulation::clear_constraints (void)
int class_constrained_delaunay_triangulation::clear_vertices (void)
int class_constrained_delaunay_triangulation::compute_union (void)
void class_constrained_delaunay_triangulation::discoverComponent (const CDT &ct, Face_handle start, int index, std::list< CDT::Edge > &border)
void class_constrained_delaunay_triangulation::discoverComponents (const CDT &ct)
bool class_constrained_delaunay_triangulation::equal (Point_2 p1, Point_2 p2)
 Tests if two points are equal.
bool class_constrained_delaunay_triangulation::equal_e (CGAL::Point_2< K_exact > p1, CGAL::Point_2< K_exact > p2)
 Tests if two points are equal.
int class_constrained_delaunay_triangulation::export_points_to_pc (void)
CDT::Face class_constrained_delaunay_triangulation::face (double x0, double y0, double z0, float rgb0, double x1, double y1, double z1, float rgb1, double x2, double y2, double z2, float rgb2, float face_weight, int provenience)
 Creates a CDT::Face from the all the input variables.
CDT::Face_handle class_constrained_delaunay_triangulation::get_face_handle_from_t_face (t_face *f)
int class_constrained_delaunay_triangulation::get_intersecting_faces_list (double x0, double y0, double z0, float rgb0, double x1, double y1, double z1, float rgb1, double x2, double y2, double z2, float rgb2, float face_weight, int provenience)
int class_constrained_delaunay_triangulation::get_seed_list_of_faces_for_tti (CDT::Face_handle fti, std::vector< CDT::Face_handle > *queue)
 This method computes an initial list of faces to start the search from. It first sees if the average point of the tti is inside some face, if not it uses alternatives for all cases.
CDT::Vertex_handle class_constrained_delaunay_triangulation::get_vertex_at (Point_2 p)
bool class_constrained_delaunay_triangulation::is_degenerate (double x0, double y0, double z0, double x1, double y1, double z1, double x2, double y2, double z2)
 Checks if a triangle with vertices xyz0, xyz1 and xyz2 is degenerate.
int class_constrained_delaunay_triangulation::iterate_intersecting_faces (CDT::Face_handle fti, int predicate_number)
bool class_constrained_delaunay_triangulation::overlaps (Point_2 *v0, Point_2 *v1, Point_2 *v2, Point_2 *p)
 Tests whether a point p is inside or on the edges of triangle formed by vertices v0, v1 and v2.
bool class_constrained_delaunay_triangulation::predicate_remove_intersecting_constraints (CDT::Face_handle fti, CDT::Face_handle fh)
bool class_constrained_delaunay_triangulation::predicate_remove_vertex (CDT::Face_handle fti, CDT::Face_handle fh)
 Check if the face fh has any vertex inside fti.
int class_constrained_delaunay_triangulation::printf_face_info (CDT::Face_handle fh)
int class_constrained_delaunay_triangulation::project_triangulation_to_new_plane (pcl::ModelCoefficients::Ptr plane, tf::Transform tf)
int class_constrained_delaunay_triangulation::remove_constraint (CDT::Face_handle fh, int li)
int class_constrained_delaunay_triangulation::remove_intersecting_constrained_edges (double x0, double y0, double z0, float rgb0, double x1, double y1, double z1, float rgb1, double x2, double y2, double z2, float rgb2, float face_weight, int provenience)
int class_constrained_delaunay_triangulation::remove_vertices_inside_triangle (double x0, double y0, double z0, float rgb0, double x1, double y1, double z1, float rgb1, double x2, double y2, double z2, float rgb2, float face_weight, int provenience)
bool class_constrained_delaunay_triangulation::segments_intersect_not_at_endpoints (CGAL::Segment_2< K_exact > seg1, CGAL::Segment_2< K_exact > seg2)
 Tests if two line segments intersect.
int class_constrained_delaunay_triangulation::set_constraint_polygon (void)
int class_constrained_delaunay_triangulation::set_transform (tf::Transform *st)
int class_constrained_delaunay_triangulation::test_if_triangulation_is_valid (void)
 Tests if the triangulation is valid or not. Usefull for indentifying broken triangulation data structures.
bool class_constrained_delaunay_triangulation::triangles_overlap (Point_2 t0_p0, Point_2 t0_p1, Point_2 t0_p2, Point_2 t1_p0, Point_2 t1_p1, Point_2 t1_p2)
 Tests if triangle 1 ovelaps with triangle 1.

Typedef Documentation

Definition at line 192 of file constrained_delaunay_triangulation.h.

typedef CGAL::Triangulation_hierarchy_2<CDT1> CDT

Definition at line 182 of file constrained_delaunay_triangulation.h.

typedef CGAL::Constrained_Delaunay_triangulation_2<K_exact, TDS, Itag> CDT1

Definition at line 180 of file constrained_delaunay_triangulation.h.

Definition at line 195 of file constrained_delaunay_triangulation.h.

typedef Enriched_face_base_2<K_exact, CGAL::Constrained_triangulation_face_base_2<K_exact> > Fb

Definition at line 170 of file constrained_delaunay_triangulation.h.

Definition at line 191 of file constrained_delaunay_triangulation.h.

Definition at line 190 of file constrained_delaunay_triangulation.h.

typedef CGAL::No_intersection_tag Itag

Definition at line 177 of file constrained_delaunay_triangulation.h.

typedef CGAL::Exact_predicates_exact_constructions_kernel K_exact

Definition at line 88 of file constrained_delaunay_triangulation.h.

Definition at line 189 of file constrained_delaunay_triangulation.h.

typedef CGAL::Triangulation_data_structure_2<Vb,Fb> TDS

Definition at line 173 of file constrained_delaunay_triangulation.h.

typedef CGAL::Triangulation_hierarchy_vertex_base_2<Vbb> Vb

Definition at line 94 of file constrained_delaunay_triangulation.h.

typedef CGAL::Triangulation_vertex_base_with_info_2<t_enriched_vertex_base_2, K_exact> Vbb

Definition at line 93 of file constrained_delaunay_triangulation.h.

Definition at line 187 of file constrained_delaunay_triangulation.h.

Definition at line 194 of file constrained_delaunay_triangulation.h.

Definition at line 188 of file constrained_delaunay_triangulation.h.


Enumeration Type Documentation

Enumerator:
CAN_ADD 
CANNOT_ADD 
EXISTS 
ERROR 

Definition at line 197 of file constrained_delaunay_triangulation.h.


Function Documentation

int class_constrained_delaunay_triangulation::add_face_manager ( double  x0,
double  y0,
double  z0,
float  rgb0,
double  x1,
double  y1,
double  z1,
float  rgb1,
double  x2,
double  y2,
double  z2,
float  rgb2,
float  face_weight,
int  provenience 
) [inherited]
Parameters:
x0 
y0 
z0 
rgb0 
x1 
y1 
z1 
rgb1 
x2 
y2 
z2 
rgb2 
face_weight 
provenience 
Returns:

Definition at line 536 of file constrained_delaunay_triangulation_utils.cpp.

int class_constrained_delaunay_triangulation::add_face_to_mesh ( double  x0,
double  y0,
double  z0,
float  rgb0,
double  x1,
double  y1,
double  z1,
float  rgb1,
double  x2,
double  y2,
double  z2,
float  rgb2,
float  face_weight,
int  provenience 
) [inherited]

Definition at line 423 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::add_face_to_mesh ( CDT::Face_handle  fti  )  [inherited]

Definition at line 346 of file constrained_delaunay_triangulation.cpp.

bool class_constrained_delaunay_triangulation::check_if_face_should_be_inserted ( double  x0,
double  y0,
double  z0,
float  rgb0,
double  x1,
double  y1,
double  z1,
float  rgb1,
double  x2,
double  y2,
double  z2,
float  rgb2,
float  face_weight,
int  provenience 
) [inherited]

Definition at line 1035 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::clear_constraints ( void   )  [inherited]

Definition at line 52 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::clear_vertices ( void   )  [inherited]

Definition at line 61 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::compute_union ( void   )  [inherited]

Definition at line 38 of file constrained_delaunay_triangulation.cpp.

void class_constrained_delaunay_triangulation::discoverComponent ( const CDT ct,
Face_handle  start,
int  index,
std::list< CDT::Edge > &  border 
) [private, inherited]

Definition at line 203 of file constrained_delaunay_triangulation.cpp.

void class_constrained_delaunay_triangulation::discoverComponents ( const CDT ct  )  [private, inherited]

Definition at line 244 of file constrained_delaunay_triangulation.cpp.

bool class_constrained_delaunay_triangulation::equal ( Point_2  p1,
Point_2  p2 
) [inherited]

Tests if two points are equal.

Parameters:
p1 Point 1
p2 Point 2
Returns:
true if p1=p2, false otherwise

Definition at line 47 of file constrained_delaunay_triangulation_utils.cpp.

bool class_constrained_delaunay_triangulation::equal_e ( CGAL::Point_2< K_exact p1,
CGAL::Point_2< K_exact p2 
) [inherited]

Tests if two points are equal.

Parameters:
p1 Point 1
p2 Point 2
Returns:
true if p1=p2, false otherwise

Definition at line 63 of file constrained_delaunay_triangulation_utils.cpp.

int class_constrained_delaunay_triangulation::export_points_to_pc ( void   )  [inherited]

Definition at line 81 of file constrained_delaunay_triangulation.cpp.

CDT::Face class_constrained_delaunay_triangulation::face ( double  x0,
double  y0,
double  z0,
float  rgb0,
double  x1,
double  y1,
double  z1,
float  rgb1,
double  x2,
double  y2,
double  z2,
float  rgb2,
float  face_weight,
int  provenience 
) [inherited]

Creates a CDT::Face from the all the input variables.

Parameters:
x0 x of vertex 0
y0 y of vertex 0
z0 z of vertex 0
rgb0 rgb of vertex 0
x1 x of vertex 1
y1 y of vertex 1
z1 z of vertex 1
rgb1 rgb of vertex 1
x2 x of vertex 2
y2 y of vertex 2
z2 z of vertex 2
rgb2 rgb of vertex 2
face_weight the weight of the face
provenience the camera projection provenience
Returns:
the CDT::Face object

Definition at line 419 of file constrained_delaunay_triangulation_utils.cpp.

CDT::Face_handle class_constrained_delaunay_triangulation::get_face_handle_from_t_face ( t_face f  )  [inherited]

Definition at line 307 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::get_intersecting_faces_list ( double  x0,
double  y0,
double  z0,
float  rgb0,
double  x1,
double  y1,
double  z1,
float  rgb1,
double  x2,
double  y2,
double  z2,
float  rgb2,
float  face_weight,
int  provenience 
) [inherited]

Definition at line 778 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::get_seed_list_of_faces_for_tti ( CDT::Face_handle  fti,
std::vector< CDT::Face_handle > *  queue 
) [inherited]

This method computes an initial list of faces to start the search from. It first sees if the average point of the tti is inside some face, if not it uses alternatives for all cases.

Parameters:
tti_v0 tti vertex 0
tti_v1 tti vertex 1
tti_v2 tti vertex 2
queue a pointer to the list of CDT::Face_hanle faces to start the search from
Returns:
1 if success

Definition at line 312 of file constrained_delaunay_triangulation_utils.cpp.

CDT::Vertex_handle class_constrained_delaunay_triangulation::get_vertex_at ( Point_2  p  )  [inherited]

Definition at line 328 of file constrained_delaunay_triangulation.cpp.

bool class_constrained_delaunay_triangulation::is_degenerate ( double  x0,
double  y0,
double  z0,
double  x1,
double  y1,
double  z1,
double  x2,
double  y2,
double  z2 
) [inherited]

Checks if a triangle with vertices xyz0, xyz1 and xyz2 is degenerate.

Returns:
true is triangle is degenerate, false otherwise

Definition at line 191 of file constrained_delaunay_triangulation_utils.cpp.

int class_constrained_delaunay_triangulation::iterate_intersecting_faces ( CDT::Face_handle  fti,
int  predicate_number 
) [inherited]
bool class_constrained_delaunay_triangulation::overlaps ( Point_2 v0,
Point_2 v1,
Point_2 v2,
Point_2 p 
) [inherited]

Tests whether a point p is inside or on the edges of triangle formed by vertices v0, v1 and v2.

Parameters:
v0 The first vertex
v1 The second vertex
v2 The third vertex
p the point to test
Returns:
true if point is inside of on the edges, false if point is outside of the triangle or on its vertices

Definition at line 104 of file constrained_delaunay_triangulation_utils.cpp.

bool class_constrained_delaunay_triangulation::predicate_remove_intersecting_constraints ( CDT::Face_handle  fti,
CDT::Face_handle  fh 
) [inherited]
bool class_constrained_delaunay_triangulation::predicate_remove_vertex ( CDT::Face_handle  fti,
CDT::Face_handle  fh 
) [inherited]

Check if the face fh has any vertex inside fti.

Parameters:
fti 
fh 
Returns:

Definition at line 606 of file constrained_delaunay_triangulation_utils.cpp.

int class_constrained_delaunay_triangulation::printf_face_info ( CDT::Face_handle  fh  )  [inherited]
int class_constrained_delaunay_triangulation::project_triangulation_to_new_plane ( pcl::ModelCoefficients::Ptr  plane,
tf::Transform  tf 
) [inherited]

Definition at line 262 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::remove_constraint ( CDT::Face_handle  fh,
int  li 
) [inherited]

Definition at line 608 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::remove_intersecting_constrained_edges ( double  x0,
double  y0,
double  z0,
float  rgb0,
double  x1,
double  y1,
double  z1,
float  rgb1,
double  x2,
double  y2,
double  z2,
float  rgb2,
float  face_weight,
int  provenience 
) [inherited]

Definition at line 1202 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::remove_vertices_inside_triangle ( double  x0,
double  y0,
double  z0,
float  rgb0,
double  x1,
double  y1,
double  z1,
float  rgb1,
double  x2,
double  y2,
double  z2,
float  rgb2,
float  face_weight,
int  provenience 
) [inherited]

Definition at line 1070 of file constrained_delaunay_triangulation.cpp.

bool class_constrained_delaunay_triangulation::segments_intersect_not_at_endpoints ( CGAL::Segment_2< K_exact iseg1,
CGAL::Segment_2< K_exact iseg2 
) [private, inherited]

Tests if two line segments intersect.

Parameters:
iseg1 first line segment
iseg2 second line segment
Returns:
true if segments intersect not at any of the endpoints. False otherwise

Definition at line 129 of file constrained_delaunay_triangulation_utils.cpp.

int class_constrained_delaunay_triangulation::set_constraint_polygon ( void   )  [inherited]

Definition at line 68 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::set_transform ( tf::Transform *  st  )  [inherited]

Definition at line 74 of file constrained_delaunay_triangulation.cpp.

int class_constrained_delaunay_triangulation::test_if_triangulation_is_valid ( void   )  [inherited]

Tests if the triangulation is valid or not. Usefull for indentifying broken triangulation data structures.

Returns:
1 on success

Definition at line 80 of file constrained_delaunay_triangulation_utils.cpp.

bool class_constrained_delaunay_triangulation::triangles_overlap ( Point_2  it0_p0,
Point_2  it0_p1,
Point_2  it0_p2,
Point_2  it1_p0,
Point_2  it1_p1,
Point_2  it1_p2 
) [inherited]

Tests if triangle 1 ovelaps with triangle 1.

Parameters:
it0_p0 triangle 1, vertice 0
it0_p1 triangle 1, vertice 1
it0_p2 triangle 1, vertice 2
it1_p0 triangle 2, vertice 0
it1_p1 triangle 2, vertice 1
it1_p2 triangle 2, vertice 2
Returns:
true if triangles overlap not at their vertices, false otherwise

Definition at line 225 of file constrained_delaunay_triangulation_utils.cpp.

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines


polygon_primitives_extraction
Author(s): Miguel Oliveira
autogenerated on Wed Jul 23 04:35:24 2014