#include <CGAL/basic.h>
#include <CGAL/Arr_observer.h>
#include "arr_exact_construction_segments.h"
#include "arr_print.h"
public:
std::cout << "-> The insertion of : [ " << e->curve()
<< " ] causes a face to split.\n";
}
std::cout << "-> The removal of : [ " << e->curve()
<< " ] causes two faces to merge.\n";
}
};
int main() {
Arrangement arr;
My_observer obs(arr);
insert_non_intersecting_curve(arr, Segment(Point(-1, 0), Point(0, 1)));
insert_non_intersecting_curve(arr, Segment(Point(0, 1), Point(1, 0)));
insert_non_intersecting_curve(arr, Segment(Point(1, 0), Point(0, -1)));
insert_non_intersecting_curve(arr, Segment(Point(0, -1), Point(-1, 0)));
Segment s_v(Point(0, -1), Point(0, 1));
Halfedge_handle e_v = insert_non_intersecting_curve(arr, s_v);
insert(arr, Segment(Point(-1, 0), Point(1, 0)));
print_arrangement_size(arr);
remove_edge(arr, e_v);
print_arrangement_size(arr);
return 0;
}
Definition: Arr_observer.h:24
virtual void before_merge_face(Face_handle f1, Face_handle f2, Halfedge_handle e)
issued just before the two edges f1 and f2 are merged to form a single face, following the removal of...
virtual void before_split_face(Face_handle f, Halfedge_handle e)
issued just before a face f is split into two, as a result of the insertion of the edge e into the ar...