CGAL实现两个立方(平面)Bezier / Splines偏移的交集

时间:2013-05-20 15:54:06

标签: cgal

CGAL的手册表明没有这样的实施,如果你知道更多让我知道的话

<磷>氮

2 个答案:

答案 0 :(得分:2)

这听起来像两个问题,而不是一个:

(1)如何交叉两个平面三次贝塞尔曲线

(2)如何偏移平面三次贝塞尔曲线

我不明白“没有实施”的说法。也许他们只是意味着CGAL没有实现。

这两个问题都需要数值方法或近似值 - 两者都没有封闭形式的解决方案。

但它们都是许多可行的(近似)解决方案的众所周知的问题。搜索“相交贝塞尔曲线”或“偏移贝塞尔曲线”将返回许多有用的参考和代码样本。

如果您想使用CGAL解决这些问题......

(1)交叉路口。这基本上是一个根查找问题,CGAL有一个名为AlgebraicKernel_d_2 :: Solve_2的双变量根查找器。

(2)抵消。也许可以使用Minkowski和函数来完成。例如,查看approximated_offset_2。结果将是多边形的,但这可能足以满足您的需要。这实际上是一个曲线逼近问题,据我所知,CGAL没有工具。

答案 1 :(得分:0)

对任何有兴趣的人:

“有一个精确安排的Bezier曲线的CGAL实现(http://www.cgal.org/Manual/latest/doc_html/cgal_manual/Arrangement_on_surface_2/Chapter_main.html#Subsection_32.6.7)”欢呼Iddo Hanniel