两条(垂直)线之间的交点
Intersection between two (perpendicular) lines
假设我有一条定义为 y = z * x
的(无限)线,我怎样才能找到这条线中与任何给定坐标最近的点?从技术上讲,我在给定坐标上寻找初始线与其垂线之间的交点。
设 (x, zx)
为给定直线上的一个点,(u, v)
为外部点。
平方距离为
(x - u)² + (zx - v)² = (z² + 1) x² - 2 (u + zv) x + u² + v²
这个二次表达式的最小值是
x = (u + zv) / (z² + 1)
给你点在直线上的正交投影。
我做了几个星期的线交点样本。你可以试试:
https://github.com/feldhaus/math-geometry-playground/blob/master/line-intersection/index.html
假设我有一条定义为 y = z * x
的(无限)线,我怎样才能找到这条线中与任何给定坐标最近的点?从技术上讲,我在给定坐标上寻找初始线与其垂线之间的交点。
设 (x, zx)
为给定直线上的一个点,(u, v)
为外部点。
平方距离为
(x - u)² + (zx - v)² = (z² + 1) x² - 2 (u + zv) x + u² + v²
这个二次表达式的最小值是
x = (u + zv) / (z² + 1)
给你点在直线上的正交投影。
我做了几个星期的线交点样本。你可以试试:
https://github.com/feldhaus/math-geometry-playground/blob/master/line-intersection/index.html