Конструктивная твердотельная геометрия


Конструктивная твердотельная геометрия ( CSG ; ранее называвшаяся вычислительной бинарной твердотельной геометрией ) — это метод, используемый в твердотельном моделировании . Конструктивная твердотельная геометрия позволяет разработчику моделей создавать сложную поверхность или объект, используя логические операторы для объединения более простых объектов, [1] потенциально создавая визуально сложные объекты путем объединения нескольких примитивных объектов. [2] [3]

В компьютерной 3D-графике и САПР CSG часто используется в процедурном моделировании . CSG также может выполняться на полигональных сетках и может быть процедурным и/или параметрическим, а может и не быть.

Простейшие твердотельные объекты, используемые для представления, называются геометрическими примитивами . Обычно это объекты простой формы: кубоиды , цилиндры , призмы , пирамиды , сферы , конусы . [1] Набор допустимых примитивов ограничен каждым программным пакетом. Некоторые программные пакеты позволяют использовать CSG на изогнутых объектах, а другие — нет.

Объект строится из примитивов с помощью допустимых операций , которые обычно являются булевыми операциями над множествами : объединением , пересечением и разностью , а также геометрическими преобразованиями этих множеств. [1]

Примитив обычно может быть описан процедурой , которая принимает некоторое количество параметров ; например, сфера может быть описана координатами ее центральной точки вместе со значением радиуса. Эти примитивы могут быть объединены в составные объекты с помощью таких операций:

Сочетая эти элементарные операции, можно создавать объекты высокой сложности, начиная с простых.


Объекты CSG могут быть представлены бинарными деревьями, где листья представляют примитивы, а узлы представляют операции. На этом рисунке узлы помечены для пересечения , для объединения и для разности .
Операции CSG применяются в контексте лучей в трассировщике лучей