Я знаю запуск и конечные точки на линейном сегменте. Поскольку этот пример говорит, что линейный сегмент имеет расстояние 5. Теперь я хочу знать точку, которая имеет расстояние три далеко от конечной точки. Какая-либо идея, как сделать это с математикой?
Стартовая точка (0,0) конечная точка (0,5)
Точка я хочу найти (0,2)
Если ваши очки равны (x1, y1)
и (x2, y2)
], и вы хотите найти точку (x3, y3)
, которая на n
единиц от точки 2:
d = sqrt((x2-x1)^2 + (y2 - y1)^2) #distance
r = n / d #segment ratio
x3 = r * x2 + (1 - r) * x1 #find point that divides the segment
y3 = r * y2 + (1 - r) * y1 #into the ratio (1-r):r