Быстрое перемещение точки вдоль линииC#

Место общения программистов C#
Anonymous
Быстрое перемещение точки вдоль линии

Сообщение Anonymous »

В этом проблема:
У меня есть линия L, определенная как (X1,Y1) – (X2,Y2), и точка P (Xp, Yp) на L, которую я хочу переместить скалярное расстояние D вдоль этой линии и получить точку Q (Xq, Yq)
Вот вопрос:
Существует ли быстрый ( нет sqrt, желательно целочисленный) алгоритм расчета Q? Существует ли какая-нибудь целочисленная арифметика, основанная на чем-то вроде функции ошибки, используемой в алгоритмах рисования линий?
Это вопрос кодирования на C# (предпочтительно).
Вот что я пробовал:

Я могу получить единичный вектор строки с помощью функции sqrt, но у меня много строк, и я надеюсь на более быстрый алгоритм


Подробнее здесь: https://stackoverflow.com/questions/786 ... ong-a-line

Вернуться в «C#»