Некоторые особенности NURBS-поверхностей
Поверхности типа NURBS по праву считаются одним из наиболее совершенных творений компьютерной графики, когда речь идет о моделировании объектов с плавными обводами форм. Такие формы свойственны, главным образом, объектам живой природы или, как принято говорить в трехмерной графике, объектам «органики» — растениям и живым организмам. Однако и среди объектов искусственного происхождения достаточно много таких, которые отличаются плавностью кривизны поверхности и отсутствием резких изломов формы. В частности, такая плавность изгибов характерна для складок на тканях или для корпусов современных самолетов и автомобилей.
В главе 5 вы познакомились с инструментами создания стандартных NURBS-no-верхностей двух типов: Point Surf (Точечная поверхность) и CV Surf (CV-поверх-ность), однако до сих пор мы ничего не говорили о том, как можно придать этим стандартным поверхностям нужную форму. Задача данной главы — научить вас работать с подобъектами NURBS-поверхностей, аналогично тому, как в предыдущей главе вы научились редактировать форму сеток и полисеток, манипулируя их вершинами, ребрами и гранями.
В главах 6 и 7 вы сталкивались с NURBS-поверхностями, формируемыми путем выдавливания, вращения или лофтинга NURBS-кривых. Создаваемые такими способами поверхности называются зависимыми, так как их форма полностью зависит от конфигурации кривых-сечений. Редактировать форму зависимых NURBS-поверхностей нельзя никак иначе, кроме как воздействуя на форму лежащих в их основе кривых. Однако можно разорвать зависимость подобных поверхностей от породивших их кривых, обретя при этом возможность редактирования формы поверхностей на уровне подобъектов. Платой за это будет утрата связи формы поверхности с породившими ее кривыми-сечениями.
Перед тем как приступить к освоению методов редактирования формы независимых NURBS-поверхностей, стоит внимательнее присмотреться к тому, как они отображаются на экране max 7.5.
В каркасном варианте отображения NURBS-поверхность совсем не похожа на привычную нам сетку из треугольных граней или многоугольников-полигонов. Вообще говоря, такая поверхность и не имеет граней, так как ее форма описывается математическими уравнениями. По умолчанию NURBS-поверхность отображается совокупностью так называемых изолиний, то есть линий равных значений локальных координат U и V, которые условно можно рассматривать как координаты «вдоль» и «поперек» поверхности, как показано на рис. 10.1, вверху. На этом рисунке белыми линиями обозначены опорные кривые, а линиями серого цвета, которые на самом деле на экране max 7.5 имеют зеленую окраску, — изолинии NURBS-поверхности.
Рис. 10.1. Отображение поверхности типа NURBS в виде набора изолиний (вверху) и в виде сетки (внизу)
Число изолиний можно менять с помощью счетчиков U Lines (U-изолиний) и V Lines (V-изолиний), размещающихся в свитке Display Line Parameters (Параметры отображения линий) командной панели Modify (Изменить), показанном на рис. 10.2. Этот свиток становится доступным, если выделен объект, представляющий собой NURBS-поверхность, и не включен режим выделения подобъектов этого объекта, то есть в окне стека модификаторов выбрана строка NURBS Surface (NURBS-поверхность) — заголовок дерева подобъектов.
Рис. 10.2. Свиток Display Line Parameters содержит переключатель типа отображения NURBS-поверхностей и счетчики числа изолиний
Тем не менее max 7.5 все же разбивает NURBS-no-верхности на треугольные грани, чтобы к ним можно было применять те же алгоритмы отображения, что и к полигональным сеткам. Чтобы увидеть эту скрытую от глаз сетчатую геометрию NURBS-поверхности в каркасном режиме, как показано на рис. 10.1, внизу, следует в свитке Display Line Parameters (Параметры отображения линий) установить переключатель в положение Mesh Only (Только сетка). Выбираемая по умолчанию позиция переключателя Iso and Mesh (Сетка и изолинии) обеспечивает отображение изолиний в каркасном режиме просмотра и сетки — в тонированном режиме. Чтобы увидеть топологию сетки в тонированном варианте отображения, нужно дополнительно включить режим Edged Faces (Контуры граней), просто нажав клавишу F4.
Эти особенности отображения NURBS-поверхностей следует учитывать при редактировании их формы, своевременно выбирая нужный режим просмотра.
В данной главе мы познакомимся с тремя разновидностями приемов создания трехмерных тел произвольной формы на основе NURBS-поверхностей:
придание нужной формы стандартной поверхности типа NURBS;
редактирование формы NURBS-поверхности, полученной за счет преобразования стандартного примитива;
моделирование тел произвольной формы с использованием набора инструментов преобразования NURBS-кривых в NURBS-поверхности.