您好我正在编写分析点数据的小脚本 - 一切都差不多完成了但是我坚持找到两条线(边缘)之间的交点,这些点之间有给定的长度。下图更好地说明了问题:
编辑:它唯一的二维问题& DB&的距离BE应该是平等的
答案 0 :(得分:2)
假设您希望距离DE
为给定的L
。您的积分{D}
和{E}
是
{D} = {B} + x * {a}
{E} = {B} + x * {c}
其中{a}
是规范化向量BA
,{c}
是规范化向量BC
。 (这些向量必须具有相同的长度,以便可以使用相同的因子x
。规范化是实施此操作的最简单方法。)
现在你有了等式:
L = |{D} - {E}|
= |x*{a} - x*{c}|
分解为矢量分量:
L = sqrt((x*ax - x*cx)² + (x*ay - x*cy)²)
= x * sqrt((ax - cx)² + (ay - cy)²)
解决x
:
x = L / sqrt((ax - cx)² + (ay - cy)²)
并在上面的第一个等式中使用找到的x
。