gpt4 book ai didi

javascript - 查找线段上的最近点

转载 作者:行者123 更新时间:2023-12-03 17:03:42 26 4
gpt4 key购买 nike

我尝试在Javascript中找到一种方法,该方法可以从3个信息中获取段上最近的点坐标:段端点,比如说A = [x1,y1]和B = [x2,y2],以及点C = [x ,y]。

enter image description here

如何执行呢?

最佳答案

使 vector

AB = (B.X-A.X, B.Y-A.Y)
AC = (C.X-A.X, C.Y-A.Y)

然后计算 CAB线上的正交投影:
AD = AB * (AB.dot.AC) / (AB.dot.AB);

在坐标中:
CF = ((B.X-A.X)*(C.X-A.X)+(B.Y-A.Y)*(C.Y-A.Y)) / ((B.X-A.X)^2+(B.Y-A.Y)^2)
D.X=A.X+(B.X-A.X)*CF
D.Y=A.Y+(B.Y-A.Y)*CF

请注意,对于 CF<0CF>1投影点 D位于 AB段之外的情况,因此最接近的pointon段分别是 AB

关于javascript - 查找线段上的最近点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61333058/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com