Статья посвящена описанию kd-деревьев и их применению в разработанном методе и алгоритме поиска пересечения луча с треугольниками в оптической системе. Они позволяют уменьшить количество просматриваемых элементов при поиске и, как следствие, ускорить процесс поиска пересечения луча с некоторой областью. Рассмотрены наиболее популярные разновидности деревьев, используемые при компьютерном моделировании, а также сущность, достоинства и недостатки kd-деревьев по сравнению с другими. Для описания оптимизирующих структур введены необходимые программные абстракции, используемые в разработанном комплексе. Подробно описан алгоритм трассировки лучей, оптимизированный с помощью kd-деревьев, произведена оценка его сложности. Для пояснения принципа SAH был приведен пример определения наилучшего расположения секущей плоскости для группы элементов, ограниченных одних объемом. Описан алгоритм подсчета числа элементов по обе стороны от плоскости разбиения. Представлен рекурсивный алгоритм обхода kd-дерева. Применение kd-деревьев позволяет значительно ускорить процесс моделирования трассировки лучей в оптической системе светового прибора для дальнейшего анализа его светотехнических характеристик.
все жанры