Найдите расстояние от трехмерной точки до отрезка линии

У меня есть трехмерная точка P и линейный сегмент, определенный A и B (A - начальная точка линейного сегмента, B - конец).

Я хочу вычислить кратчайшее расстояние между P и линия AB.

Вычислить расстояние от точки до бесконечной линии было легко, так как это было решение на Wolfram Mathworld , и я реализовал это, но мне нужно сделать это для линия конечной длины.

Мне не удалось найти надежного решения для этого в 3D после долгих поисков.

Я реализовал алгоритмы для вычисления скалярного произведения, перекрестного произведения, величины и т. Д. На C ++ со структурой, содержащей числа с плавающей запятой x, y и z.

Псевдокод, ссылки или код практически на любом языке для это было бы здорово.

10
задан vaxquis 24 January 2016 в 12:25
поделиться