CGAL 修改现有的多边形

CGAL modify existing polygon

我目前正在研究一种在 std::vector<Kernel::Point_2> 点集 P 上运行的算法。作为输入,我有一个多边形 (Polygon_2<Kernel>),它的边界上有一个 P 的子集。其余点位于给定多边形的外部。

我想迭代地扩展多边形,这实际上意味着移除一条边 (p,q) 并插入两条新边 (p,v) (v,q)。我选择顶点 v 以便空三角形 T(p,v,q) 具有最大面积。这相当于在底层排序顶点列表(边界) 的多边形。目前,我将多边形的所有点复制到一个向量中,修改该向量并使用边界向量重新初始化一个新的多边形。有没有办法修改现有多边形的边界?

你试过函数insert了吗?