fixed bug in iterators in Triangulation_sphere.

This commit is contained in:
Claudia Werner 2013-01-22 08:26:23 +01:00
parent e230e790c6
commit 75b49d3a99
1 changed files with 14 additions and 21 deletions

View File

@ -89,9 +89,14 @@ class Ghost_tester
return fit->is_ghost();
}
bool operator()(const All_edges_iterator & eit) const {
int dim = t->dimension();
Face_handle f = eit->first;
t->show_all();
t->show_face(f);
bool edge1 = f->is_ghost();
bool edge2 = f->neighbor(eit->second)->is_ghost();
Face_handle f2 = f->neighbor(eit->second);
bool edge2b = f2->is_ghost();
bool edge2 = (f->neighbor(eit->second))->is_ghost();
bool result = edge1&&edge2;
return !result;
}
@ -276,9 +281,9 @@ Solid_faces_iterator solid_faces_end() const {
Solid_edges_iterator solid_edges_begin() const {
if ( dimension() < 1 )
return solid_edges_end();
return CGAL::filter_iterator (all_edges_begin(), Ghost_tester(this),
all_edges_end());
}
return CGAL::filter_iterator (all_edges_end(), Ghost_tester(this),
all_edges_begin());
}
Solid_edges_iterator solid_edges_end() const {
return CGAL::filter_iterator (all_edges_end(), Ghost_tester(this));
@ -287,8 +292,8 @@ Solid_edges_iterator solid_edges_end() const {
Contour_edges_iterator contour_edges_begin() const{
if(dimension()<1)
return contour_edges_begin();
return CGAL::filter_iterator (all_edges_begin(), Ghost_tester(this),
all_edges_end());
return CGAL::filter_iterator (all_edges_end(), Ghost_tester(this),
all_edges_begin());
}
Contour_edges_iterator contour_edges_end() const{
@ -605,18 +610,6 @@ CGAL_precondition(dimension()>=-1);
case 1:{
All_vertices_iterator vi=vertices_begin();
/*Vertex_handle v0 = f->vertex(0);
Vertex_handle v1= f->neighbor(0)->vertex(0);
if (is_too_close(v0->point(),p)){
lt = TOO_CLOSE;
li=0;
return;
}
if(is_too_close(v1->point(),p)){
lt = TOO_CLOSE;
li=1;
return;
}*/
for(;vi!=vertices_end();vi++)
if(is_too_close(vi->point(),p)){
lt = TOO_CLOSE;