Окружности в трехмерном пространстве
От: rg45 СССР  
Дата: 11.12.17 19:02
Оценка: 2 (1) +1
В трехмерном пространстве даны две окружности. Для каждой из окружностей даны: тройка координат центра; единичный вектор нормали к плоскости, в которой лежит окружность; и радиус. Если кому-то нравится, он может сразу умножить вектор нормали на радиус и считатть, что окружность задается двумя векторами. Требуется, для общего случая, найти координаты пары ближайших точек, лежащих на разных окружностях.

Если это упростит решение, случаи, обладающие любым видом симметрии, когда таких пар точек больше одной, можно выбросить из рассмотрения.

Для случаев, имеющих более одного локального минимума, достатчно найти только один, дающий наименьшее расстояние.

Задача имеет прикладное значение (в области collision detection), поэтому вполне приемлемо, если решение будет получено в виде одного или нескольких трансцендентных уравнений одной переменной. (Которые потом можно будет решить численными методами и забить в таблицу).

Можно перейти от декартовой системы координат к любой удобной (сферической, цилиндрической и даже собственно придуманной специально для этой задачи).

Над этой задачей я бился уже почти лет двадцать назад, но так она мне и не далась. Удалось решить похожую задачу для окружности и прямой. Вот я и подумал: а чем черт не шутит, а вдруг, кто-нибудь решит.
--
Не можешь достичь желаемого — пожелай достигнутого.
Отредактировано 11.12.2017 19:38 rg45 . Предыдущая версия . Еще …
Отредактировано 11.12.2017 19:38 rg45 . Предыдущая версия .
Отредактировано 11.12.2017 19:15 rg45 . Предыдущая версия .
Отредактировано 11.12.2017 19:14 rg45 . Предыдущая версия .
Отредактировано 11.12.2017 19:13 rg45 . Предыдущая версия .
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.