直线和圆的交点
Line and circle intersection points
我有一个圆心在 (0, 0) 的圆和一条由方程 y = kx 给出的直线。我需要推导出一个公式来找到这条线与圆的交点。我知道显示的方程式 at the screenshot,但我在将直线方程式从 y = kx 形式转换为 Ax + By + C = 0
形式时遇到问题
对于以 (0,0)
为中心的半径 R
的圆,我们可以很容易地找到两个具有 y=kx
:
形式的线的交点
fi = atan(k)
x1 = R * cos(fi)
y1 = R * sin(fi)
x2 = - R * cos(fi)
y2 = - R * sin(fi)
或者 k
没有触发。函数:
coeff = R / sqrt(1 + k^2)
x1 = coeff * k
y1 = coeff
x2 = - coeff * k
y2 = - coeff
第一种方法是指y = kx+b
中的k
系数对应直线与OX轴夹角正切的规则
第二种方式——线圆方程组的求解
y = kx
y^2 + x^2 = R^2`
转换很简单。
y = k.x <-> -k.x + 1.y + 0 = 0
我有一个圆心在 (0, 0) 的圆和一条由方程 y = kx 给出的直线。我需要推导出一个公式来找到这条线与圆的交点。我知道显示的方程式 at the screenshot,但我在将直线方程式从 y = kx 形式转换为 Ax + By + C = 0
形式时遇到问题对于以 (0,0)
为中心的半径 R
的圆,我们可以很容易地找到两个具有 y=kx
:
fi = atan(k)
x1 = R * cos(fi)
y1 = R * sin(fi)
x2 = - R * cos(fi)
y2 = - R * sin(fi)
或者 k
没有触发。函数:
coeff = R / sqrt(1 + k^2)
x1 = coeff * k
y1 = coeff
x2 = - coeff * k
y2 = - coeff
第一种方法是指y = kx+b
中的k
系数对应直线与OX轴夹角正切的规则
第二种方式——线圆方程组的求解
y = kx
y^2 + x^2 = R^2`
转换很简单。
y = k.x <-> -k.x + 1.y + 0 = 0