Форум сайта python.su
72
Собственно, работает, но написана совершенно не в духе Numpy, покажите, пожалуйста, как это должно в нем выглядеть.
import numpy.linalg as linalg
def find_closest_line(lines, point):
ls = []
for x in zip(lines, lines[1:]):
n = (x[0][1]-x[1][1])*point[0]+(x[1][0]-x[0][0])*point[1]+ x[0][0]*x[1][1] - x[1][0]*x[0][1]
ls.append(abs(n / linalg.norm(x)))
return N.argmin(ls)
Офлайн