两条Bézier曲线(或两条曲线和一条直线)的交点:代码
Intersection of two Bézier curves (or two curves and a line): code?
检查两条三次Bézier曲线是否相交给出了http://cagd.cs.byu.edu/~557/text/ch7.pdf ..第一次听起来很好读…但这不是代码。
我想知道是否有人在任何常见的编程语言中实际实现了这个算法。我对一些Javascript代码(其他语言也可以)很感兴趣,这些代码可以使用两个三次bsamzier曲线,或者bsamzier曲线和一条直线来实现算法。
对于三次bsamizier曲线和直线,最简单的方法可能是使用第7.3节参数曲线和隐式曲线的相交。可以把这条直线写成a x+b y+c=0
。如果你用三次p(t)和q(t)来表示x和y坐标你可以把它们代入直线方程。这是t的三次函数你可以用你喜欢的寻根算法来解它。
类似的问题检查两个三次Bézier曲线是否相交有一些很好的答案。特别是第一个答案提到渐近线库,它有所有这些代码。您可以在http://sourceforge.net/p/asymptote/code/HEAD/tree/trunk/asymptote/path.cc上看到相关的源代码,其中包括查找三次方根的代码。
相关文章:
- 带有超级下拉菜单的两条水平线
- 为什么我的画布上只显示两条线
- 如何:´postMessage´它能发送两条信息吗
- 使用 D3 的两条线之间的阴影区域
- Socket.io 无法连续发送两条消息
- JavaScript - 我想将两条信息分配给一个数组 - 我是否使用多维数组
- 在 javascript 中,对象值中的两条垂直线是什么意思?
- 在画布上移动两条以上的箭头线
- 如何使用整数值(不是向量)计算两条线之间的度数
- 试图通过两条线获得自定义和无限的猫头鹰轮播
- 如何在javascript中找到两条切线的交点
- 使用d3来遮挡两条线之间的区域
- 制作'链接到'活跃在两条路线上,而不是一条
- 在SVG路径上生成内阴影效果元素/三角形的两条边
- 如何显示中间有延迟的两条消息
- 两条Bézier曲线(或两条曲线和一条直线)的交点:代码
- 我怎么知道两条线是否重叠?
- 求两条线段是否相交
- 两条路径之间最长匹配子路径
- 高图表没有显示两条曲线的准确百分比