Поиск пересечений между отрезком и прямой или прямой и прямой в трехмерном пространстве

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Здравствуйте, дорогие хабровчане, недавно столкнулся с проблемой, связанной с написанием алгоритма из названия в turboprolog2.0, более того я не нашел нигде готовой реализации в трехмерном пространстве на нормальных языках программирования.

Имеется решение только для двухмерного пространства. В связи с чем пришлось придумывать его самому.

Начальные условия. Первая прямая может быть отрезком
Начальные условия. Первая прямая может быть отрезком

Первая прямая задана точками P00 и P01,а вторая - Р10 и Р11. Каждая точка задана координатами X,Y,Z (например, P00 - X00,Y00,Z00). Требуется найти точку пересечения, если таковая имеется. И проверить принадлежит ли она первому отрезку или находится на его продолжении (первой прямой).

Введем вектора DP0 и DP1, которые параллельны соответствующим им прямым. Вычислим их компоненты.

# вектор первой прямой
DX0 = X01 - X00
DY0 = Y01 - Y00
DZ0 = Z01 - Z00
# вектор второй прямой
DX1 = X11 - X10
DY1 = Y11 - Y10
DZ1 = Z11 - Z10

Точка пересечения прямых принадлежит обеим прямым (очевидно

Источник: https://habr.com/ru/articles/770610/


Интересные статьи

Интересные статьи

Иногда (часто) во время разработки веб-сайта возникает необходимость реализовать поиск с фильтрацией, и отсортировать результаты по какому-то фиксированному полю: например, поиск товаров в интернет-ма...
Как и большинство крупных игроков на рынке, Intel исторически всячески поддерживала желающих взломать продукты компании — естественно, только с добрыми намерениями, в число которых можно включить ...
Это четвертая статья с этой картинкой для привлечения внимания. Она каким-то удивительным образом опять подошла по смыслу.Мы делаем проект по управлению большими каталогами товаров, и нам потребовалос...
В 2019 году мы получили от потенциального клиента запрос на продвижение англоязычного сайта по теме «soaking tubs» (это такие глубокие ванны для полного погружения в воду). Мы изучили к...
В настоящее время все больше компаний начинают использовать GraphQL. Это относительно новая технология (если быть более точным, то это язык запросов), которая призвана решить существующие про...