diff --git a/Combinatorial_map/include/CGAL/Combinatorial_map.h b/Combinatorial_map/include/CGAL/Combinatorial_map.h index 09c6235a9ad..bd32ac46138 100644 --- a/Combinatorial_map/include/CGAL/Combinatorial_map.h +++ b/Combinatorial_map/include/CGAL/Combinatorial_map.h @@ -1690,9 +1690,13 @@ namespace CGAL { template void link_beta(Dart_handle adart1, Dart_handle adart2) { - if ( i==0 ) link_beta_0(adart1, adart2); - else if ( i==1 ) link_beta_1(adart1, adart2); - else link_beta_for_involution(adart1, adart2); + if ( are_attributes_automatically_managed() ) + { + if ( i==0 ) link_beta_0(adart1, adart2); + else if ( i==1 ) link_beta_1(adart1, adart2); + else link_beta_for_involution(adart1, adart2); + } + else basic_link_beta(adart1, adart2); } /** Double link a dart with betai to a second dart. @@ -2092,9 +2096,13 @@ namespace CGAL { template void sew(Dart_handle adart1, Dart_handle adart2) { - if ( i==0 ) sew_0(adart1, adart2); - else if ( i==1 ) sew_1(adart1, adart2); - else sew_for_involution(adart1, adart2); + if ( are_attributes_automatically_managed() ) + { + if ( i==0 ) sew_0(adart1, adart2); + else if ( i==1 ) sew_1(adart1, adart2); + else sew_for_involution(adart1, adart2); + } + else topo_sew(adart1, adart2); } /** Sew by betai the two given darts plus all the required darts @@ -2337,9 +2345,13 @@ namespace CGAL { template void unsew(Dart_handle adart) { - if ( i==0 ) unsew_0(adart); - else if ( i==1 ) unsew_1(adart); - else unsew_for_involution(adart); + if ( are_attributes_automatically_managed() ) + { + if ( i==0 ) unsew_0(adart); + else if ( i==1 ) unsew_1(adart); + else unsew_for_involution(adart); + } + // else topo_unsew(adart); } /** Unsew by betai the given dart plus all the required darts diff --git a/Linear_cell_complex/examples/Linear_cell_complex/CMakeLists.txt b/Linear_cell_complex/examples/Linear_cell_complex/CMakeLists.txt index 77cb4be0b18..6be728b43f6 100644 --- a/Linear_cell_complex/examples/Linear_cell_complex/CMakeLists.txt +++ b/Linear_cell_complex/examples/Linear_cell_complex/CMakeLists.txt @@ -41,6 +41,7 @@ if ( CGAL_FOUND ) "linear_cell_complex_3_with_mypoint.cpp" ) create_single_source_cgal_program("plane_graph_to_lcc_2.cpp") + create_single_source_cgal_program("linear_cell_complex_3_attributes_management.cpp") add_executable(linear_cell_complex_3_triangulation linear_cell_complex_3_triangulation.cpp)