language-agnostic - 两条线段之间的最短距离

标签 language-agnostic geometry

我需要一个函数来找到两条线段之间的最短距离。线段由两个端点定义。例如,我的一个线段 (AB) 将由两个点 A (x1,y1) 和 B (x2,y2) 定义,另一个 (CD) 将由两个点 C (x1,y1) 定义和 D (x2,y2)。

随意用您想要的任何语言编写解决方案,我可以将其翻译成 javascript。请记住,我的几何技能非常生疏。我已经看过 here而且我不确定如何将其转换为函数。非常感谢您的帮助。

最佳答案

这是二维的吗?如果是这样,答案只是点 A 和线段 CD、B 和 CD、C 和 AB 或 D 和 AB 之间的最短距离。所以这是一个相当简单的“点和线之间的距离”计算(如果距离都相同,那么线是平行的)。

This site explains the algorithm for distance between a point and a line pretty well.

在 3 维中稍微有点棘手,因为线条不一定在同一平面上,但这里似乎并非如此?

关于language-agnostic - 两条线段之间的最短距离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2824478/

相关文章:

algorithm - 如何操纵围绕中心值震荡的价格序列(指标)?

language-agnostic - 一般来说,Web 框架如何支持 REST 风格?

geometry - 如何确定圆弧的弧形截面(即扇形切片)中是否包含点(X,Y)?

java - 如何测试两个任意形状的重叠(或碰撞)

algorithm - 递归生成所有长度为 n 的二进制字符串的最佳方法是什么?

regex - 描述 {0,1} 语言且没有交替 0 的正则表达式

language-agnostic - 网站要求重新启动浏览器。为什么?

c - 开源拼图 block 生成器

c# - 根据相对速度和角度找出玩家按下的键

mysql - MariaDB 没有 ST_Distance_Sphere 的等效函数