Re: Окружности в трехмерном пространстве
От: apachik  
Дата: 11.12.17 19:20
Оценка:
Здравствуйте, rg45, Вы писали:

R>В трехмерном пространстве даны две окружности. Для каждой из окружностей даны: тройка координат центра; единичный вектор нормали к плоскости, в которой лежит окружность; и радиус. Если кому-то нравится, он может сразу умножить вектор нормали на радиус и считатть, что окружность задается двумя векторами. Требуется, для общего случая, найти координаты пары ближайших точек, лежащих на разных окружностях.


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


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


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


R>Над этой задачей я бился уже почти лет двадцать назад, но так она мне и не далась. Удалось решить похожую задачу для окружности и прямой. Вот я и подумал: а чем черт не шутит, а вдруг, кто-нибудь решит.


Пояснили бы на простом примере какие пары точек вам нужны. Достаточно только одну такую минимальную пару найти или все возможные?

P.S. На случай, если аналитического решение не дается есть такой чит: бросаем на окружности электрические заряды, которые притягиваются/отталкиваются друг к другу и итеративно двигаем их, моделируя их скольжение по окружностям под действиям сил притяжения-отталкивания.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.