使用向量叉积求点到直线的距离
felicx 化神

前言

假设有一个向量,直线上两点的点,求到直线的垂直距离

方法

向量,向量到向量的距离=
形成的四边形面积(两个向量叉乘得到的是面积),除以底边,得到的就是高,即的距离

1
2
3
4
5
6
7
8
9
def point_distance_line(point: list, line_point1: list, line_point2: list):
# 计算向量
point_arr = np.array(point)
line_point1_arr = np.array(line_point1)
line_point2_arr = np.array(line_point2)
vec1 = line_point1_arr - point_arr
vec2 = line_point2_arr - point_arr
distance = np.abs(np.cross(vec1, vec2)) / np.linalg.norm(line_point1_arr - line_point2_arr)
return distance
 评论
评论插件加载失败
正在加载评论插件
由 Hexo 驱动 & 主题 Keep
访客数 访问量