Giles Bathgate
Giles Bathgate
@afabri This is intended to address the situation in which transformations are not of the specialised implementations, and then this should increase the performance of the plane transformations by precalculating...
@maxGimeno Merge conflicts resolved.
@sloriot Reproduced locally and is now fixed in 1e422cc
@lrineau Of course there is a way to compare: https://github.com/CGAL/cgal/compare/1e422cc20e8d2c7cee45fd0407c335fb2ab0e4d1..55ddf453d993cdf33509adec797d877a64fae74c But it shows the changes made to master since the original PR too. I think this would be the same...
> I think it would make sense to have a `append()` function in `Nef_polyhedron_3` class using your changes. Ok. I have the code for this. Should I change the scope...
@sloriot The basic functionality for `append` is implemented now. Let me know what needs doing in terms of adding unit tests/documentation.
> why you need a call to `mark_bounded_volume()` while that should be the purpose of backporting the flag values). Is it because the marks that are copied with preserve_marks are...
@sloriot Would it be helpful to post some screenshots with/without the patch?
@sloriot I've added: ```diff diff --git a/src/cgalprimitive.cpp b/src/cgalprimitive.cpp index 58766324..0f3bc142 100644 --- a/src/cgalprimitive.cpp +++ b/src/cgalprimitive.cpp @@ -367,6 +367,9 @@ Primitive* CGALPrimitive::group(Primitive* pr) CGAL::Mark_bounded_volumes mbv(true); nefPolyhedron->delegate(mbv,false,false); + if(!nefPolyhedron->is_valid()) + throw; +...
@sloriot Looking at the copy constructor: ```c++ Nef_polyhedron_3(const Nef_polyhedron& N, SFace_const_iterator sf) { SNC_structure rsnc; *this = Nef_polyhedron_3(rsnc, new SNC_point_locator_default, false); initialize_infibox_vertices(EMPTY); shell_to_nef_3(N, sf, snc()); build_external_structure(); mark_bounded_volumes(); simplify(); set_snc(snc()); }...