我有两行:
y = -1/3x + 4
y = 3x + 85
交点在[24.3, 12.1]
。
我准备了一组坐标:
points = [[1, 3], [4, 8], [25, 10], ... ]
#y = -1/3x + b
m_regr = -1/3
b_regr = 4
m_perp = 3 #(1 / m_regr * -1)
distances = []
points.each do |pair|
x1 = pair.first
y2 = pair.last
x2 = ((b_perp - b_regr / (m_regr - m_perp))
y2 = ((m_regr * b_perp) / (m_perp * b_regr))/(m_regr - m_perp)
distance = Math.hypot((y2 - y1), (x2 - x1))
distances << distance
end
有宝石或更好的方法吗?
注意:上述方法不起作用。请参阅我的答案以获取有效的解决方案。