Вам нужно взять унитарный вектор из точки A
в точку B
и затем масштабировать его n
раз.
Я создам функцию, которая возвращает точек (пара координат), которые должны быть нарисованы.
def drawLine(x1, y1, x2, y2, n):
v = (x2 - x1, y2 - y1)
length = math.sqrt(v[0]**2, v[1]**2)
unitary = (v[0]/length, v[1]/length)
return [(x1 + unitary[0]*i, y1 + unitary[1]*i) for i in range(n)]