最近用Python进行直线夹角计算,总结较好的两种方法,现总结如下:
1:根据向量求夹角
由上式进行编程代码如下:
#求出斜率
k1 = (Coords2y-Coords1y)/(float(Coords2x-Coords1x))
k2 = (Coords4y-Coords3y)/(float(Coords4x-Coords3x))
#方向向量
x = np.array([1,k1])
y = np.array([1,k2])
#模长
Lx = np.sqrt(x.dot(x))
Ly = np.sqrt(y.dot(y))
#根据向量之间求其夹角并四舍五入
Cobb = int((np.arccos(x.dot(y)/(float(Lx*Ly)))*180/np.pi)+0.5)
2:根据斜率求夹角
#求出斜率并四舍五入
Cobb =int(math.fabs(np.arctan((k1-k2)/(float(1 + k1*k2)))*180/np.pi)+0.5)
更多推荐
两直线夹角求解-Python编程实现
发布评论