原点到线段的垂足

发布时间 2023-11-09 09:43:44作者: yanghui01

原理:

1) 求出向量ao在ab上的投影距离

2) a沿着ab方向移动投影距离就是垂足点的位置

 

// 获得原点到直线ab的垂点
public static Vector2 GetPerpendicularToOrigin(Vector2 a, Vector2 b)
{
    var ab = b - a;
    var ao = Vector2.zero - a;

    float proj = Vector2.Dot(ab, ao) / ab.sqrMagnitude;
    return a + ab * proj;
}