mirror of https://github.com/CGAL/cgal
added alternate sym_edge implementation by AF.
the alternate implementation is used by defining the macro: CGAL_SDG_ALTERNATE_SYMEDGE_IMPLEMENTATION_BY_AF
This commit is contained in:
parent
a732f53af6
commit
aeb6c47cdb
|
|
@ -1094,7 +1094,24 @@ protected:
|
||||||
|
|
||||||
inline Edge sym_edge(const Face_handle& f, int i) const {
|
inline Edge sym_edge(const Face_handle& f, int i) const {
|
||||||
Face_handle f_sym = f->neighbor(i);
|
Face_handle f_sym = f->neighbor(i);
|
||||||
|
#ifdef CGAL_SDG_ALTERNATE_SYMEDGE_IMPLEMENTATION_BY_AF
|
||||||
|
int count = ( f_sym->neighbor(0) == f );
|
||||||
|
int i_sym = 0;
|
||||||
|
if ( f_sym->neighbor(1) == f ) {
|
||||||
|
++count;
|
||||||
|
i_sym = 1;
|
||||||
|
}
|
||||||
|
if ( f_sym->neighbor(2) == f ) {
|
||||||
|
++count;
|
||||||
|
i_sym = 2;
|
||||||
|
}
|
||||||
|
if ( count == 1 ) {
|
||||||
|
return Edge(f_sym, i_sym);
|
||||||
|
}
|
||||||
|
return Edge(f_sym, f_sym->index( f->vertex(i) ));
|
||||||
|
#else
|
||||||
return Edge( f_sym, f_sym->index( this->_tds.mirror_vertex(f, i) ) );
|
return Edge( f_sym, f_sym->index( this->_tds.mirror_vertex(f, i) ) );
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
Edge flip(Face_handle& f, int i) {
|
Edge flip(Face_handle& f, int i) {
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue