Рассмотрим на примерах использование трех логических операторов: объединение (union), пересечение (intersection), разность (difference). На рис. 14.55 показаны два составных объекта, построенных из сфер. На рис. 14.55, а изображена линза, построенная как пересечение двух сфер. Это означает, что точка лежит внутри линзы тогда и только тогда, когда она лежит внутри обеих сфер. Событие «Линза L является пересечением сфер 5t и 52» символически записывается так:
L-S^. (14.48)
На рис. 14.55, б изображен сферический аквариум, образованный при помощи операции разности. Точка является разностью множеств Л и S (это обозначается как А - В), если она лежит в Л и не лежит в В.
Рис. 14.55. Линза и аквариум
Введение в трассировку лучей
Применение операции разности аналогично удалению материала - вырезанию или отсечению. Наш сферический аквариум определяется так"images/tmp8E4A-955.png" alt="Объединение четырех примитивов">
Рис. 14.56. Объединение четырех примитивов Конус С, лежит на цилиндре С2. Конус Су частично внедренный в С2, лежит на более толстом цилиндре С4.
Практическое упражнение 14.12.1. Декомпозиция составных форм Напишите уравнение, описывающее каждый из объектов, показанных на рис. 14.57, в терминах операций над множествами, приложенных к сферам, конусам, цилиндрам и прямоугольным параллелепипедам. Обратите внимание, что для некоторых из объектов возможны различные выражения.
Рис. 14.57. Различные формы, сделанные из примитивов
14.12.1. Трассировка лучей для СБС-объектов Как осуществляется трассировка лучей для объектов, являющихся логическими комбинациями более простых объектов? Для начала рассмотрим вышеприведенные примеры. На рис. 14.58 показан луч, входящий в сферы 5, и 52 и выходящий из них в указанные на рисунке моменты времени. Таким образом, луч находится внутри линзы ь в промежуток времени от £3 до г2, момент соударения равен £3. Если линза матовая, то для определения цвета линзы в точке соударения применяются знакомые нам правила закрашивания. Если же линза зеркальная или прозрачная, то в нужных направлениях генерируются вспомогательные лучи, для которых и производится дальнейшая трассировка.