gpt4 book ai didi

processing - 贝塞尔曲线与圆的交点

转载 作者:行者123 更新时间:2023-12-03 22:30:44 27 4
gpt4 key购买 nike

我的目标是创建以下内容(连接两个节点的定向箭头): Aim

目前我有这个(从一个节点的中心点到另一个节点的中心绘制的二次贝塞尔曲线):

Current

(注意我在节点上方绘制了贝塞尔曲线以显示它的开始和结束位置)


我需要一种方法(启发式或其他方法)来计算贝塞尔曲线和节点(椭圆)圆周之间的交点(上图中红色圆圈)。

有了这个,我可以计算节点中心和交点之间的角度,以在正确的位置和角度绘制箭头线。


作为最后的手段,我可​​以使用二次贝塞尔公式来生成沿曲线的点列表,并生成位于圆的圆周上的点列表,并使用两者之一彼此之间具有最小欧几里得距离的坐标作为我的交点。我希望任何答案都可以利用几何学或其他任何东西来更好地解决它。

最佳答案

由于交集方程是四次方程 ((X(t)-Xc)² + (Y(t)-Yc)²=R²),因此一般问题并不容易,其中 X Y 是二次多项式)。如果您手边有四次求解器,您可以使用它,但您必须选择正确的根。

更合理的做法是将圆与控制点之间的线段相交。这是近似值,但如果圆半径很小,可能不会引起注意。 enter image description here

如果您想要更高的准确性,请从这一点开始执行一到两次牛顿迭代。

关于processing - 贝塞尔曲线与圆的交点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51811935/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com