Louis Asked:2024-11-12 21:50:08 +0000 UTC2024-11-12 21:50:08 +0000 UTC 2024-11-12 21:50:08 +0000 UTC 如何求与线段成直角的点的坐标? 772 有两点A、B的坐标。给定线段AC的长度,是否可以找到C点的坐标,使其与AB形成直角? python 1 个回答 Voted Best Answer MBo 2024-11-12T22:50:09Z2024-11-12T22:50:09Z 我们找到单位方向向量,然后找到单位法向量,然后计算所需距离处的点。 结果就是两点。如果您只需要 p1,p2 中的一个点(“左”或“右”),那么您可以只保留其计算 import math def normaloflen(ax, ay, bx, by, dist): diffx = bx - ax diffy = by - ay leng = math.hypot(diffx, diffy) udx = diffx / leng udy = diffy / leng normx = -udy normy = udx p1 = ax + dist * normx, ay + dist * normy p2 = ax - dist * normx, ay - dist * normy return p1, p2 print(normaloflen(0, 0, 0, 3, 2)) print(normaloflen(2, 0, 0, 2, 1.41421356237)) 输出(为了简洁而删减): >>> ((-2.0, 0.0), (2.0, 0.0)) >>> ((1.000, -0.999999), (2.99999, 0.99999))
我们找到单位方向向量,然后找到单位法向量,然后计算所需距离处的点。
结果就是两点。如果您只需要 p1,p2 中的一个点(“左”或“右”),那么您可以只保留其计算
输出(为了简洁而删减):