LINUX.ORG.RU

Вращение внутри трехмерных решеток

 , , , ,


0

2

Всем привет. Нужна помощь с вращениями внутри трехмерных решеток.

Сейчас я генерирую по точкам трехмерного грида вот такую полусферу: http://vsb.fbb.msu.ru/share/2017-10-22-143518_1918x1177_scrot.png

и хочу делать вращение полусферы вокруг ее центра внутри трехмерной решетки.

Результат что-то вроде этого: http://vsb.fbb.msu.ru/share/2017-10-22-144203_1918x1177_scrot.png

Сейчас я применяю матрицу вращения отдельно к каждому вектору внутри грида (с учетом смещения центра) и проверяю попадает ли он в решетку/округляю до ближайшей вершины. Все работает ок даже за более-менее приемлимое время, но, мне кажется, должен быть более оптимальный путь: какая-нибудь библиотечная функция из нампая/сайпая, алгоритм или просто сишная библиотека. Можете что-нибудь подсказать?

★★★★★

Последнее исправление: silw (всего исправлений: 2)

OpenGL, если нужна производительность.

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 1)

Вращать «полусферу» как нормальную полусферу и для каждого положения проверять, какие точки решетки попали вовнутрь?

anonymous
()
Ответ на: комментарий от silw

У тебя написано «к каждому вектору грида». Я предложил сначала повернуть полусферу как тв. тело, а потом посмотреть, какие «вектора грида» попали в полусферу. Для этого нужно повернуть только один вектор, который задает ориентацию полусферы.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.