补偿Bezier曲线中的加权控制点

时间:2014-08-12 08:47:44

标签: c# geometry bezier

我有一个二次Bezier曲线,我试图计算它的长度或将其转换为折线然后计算出长度。我可以找到很多算法来做到这一点,例如:

http://www.lemoda.net/maths/bezier-length/index.html

convert bezier curve to polygonal chain?

但是这些似乎都没有考虑到控制点的权重,我认为这是NURBS线路独有的功能,但基本上没有提到任何使用NURBS的技术。

有没有人对如何解决这个问题有任何建议? Bezier技术是否有效或是否有适应它们的方法?感谢。

1 个答案:

答案 0 :(得分:1)

将贝塞尔曲线转换为折线时,经常使用两种不同的技术:

1)从贝塞尔曲线上采样的点中创建折线。
2)通过de Casteljau算法或结插入精炼原始贝塞尔曲线的控制多边形而获得的控制点中创建折线。

当采样点或应用de Casteljau算法(在同质坐标上)时,应考虑加权控制点。