triangulate(const std::vector<contour_2> &polygon) {