
Hi Joachim, Again, thanks for reviewing our library!
Important parts, like that one on "set theoretic operations" have been added during the review [...]
No excuse, but for your information, this page, and the page about robustness, were added as answers to (sometimes many) questions on this list during the review.
I have tried to run some toy programs and encountered problems very quickly, when I tried to initialize and use multi_polygons, e.g.
ggl::multi_polygon<polygon_2d> mupo; std::cout << ggl::dsv(mupo) << std::endl; // produced this error message
I agree that multi* deserves more attention in examples and documentation. But, just to be complete now, including "ggl/multi/multi.hpp" would have solved this problem. Well, actually, this one was in the documentation (related pages, compiling). This was probably also be the cause of other problems you've had with multi.
Also I was not successful in assigning or appending a polygon to a multi_polygon.
mupo.push_back(po); // for appending What is written in the docs is that a multi-polygon behaves like a range. For editing it behaves like a std::container. There were more comments about this, similar as to the inner containers of a polygon. We will come back to this, the RangeEx functionality might help here. Regards, Barend