3.1. Основы сплайнового моделирования
3.1. Основы сплайнового моделирования
Прежде чем начать моделировать, обратимся к теории. Что такое сплайны? Это двумерные геометрические фигуры. Сплайнами могут быть как линии произвольной формы, так и геометрические фигуры, такие, как прямоугольники, звезды, эллипсы и т. д. Рассматривая сплайны, мы будем оперировать такими понятиями, как вершины и сегменты. Вершины – это точки, расположенные на сплайне и различающиеся по типу. Сегмент – часть линии сплайна между двумя соседними вершинами. Степень кривизны сегмента определяется типом вершин, к которым он прилегает.
В 3ds Max используются четыре типа вершин.
? Corner (Угловая) – к такой вершине примыкают прямые сегменты (рис. 3.1).
? Smooth (Сглаженная) – кривая сплайна проводится с изгибом и имеет одинаковую кривизну сегментов с обеих сторон от нее (рис. 3.2).
Рис. 3.1. Вершина Corner (Угловая)
Рис. 3.2. Вершина Smooth (Сглаженная)
? Bezier (Безье) – похожа на сглаженную, но позволяет управлять кривизной сегментов сплайна с обеих сторон от нее. Для этого вершина снабжается касательным отрезком с маркерами в виде квадратов зеленого цвета на концах (манипуляторами Безье). Перемещая манипуляторы, можно изменять направления, по которым сегменты сплайна входят в вершину и выходят из нее, а изменяя длину ручек – регулировать кривизну сегментов сплайна (рис. 3.3). ? Bezier Corner (Угол Безье) – так же, как и вершина Bezier (Безье), снабжена касательным вектором, однако касательные не связаны друг с другом отрезком и манипуляторы Безье можно перемещать независимо (рис. 3.4).
Рис. 3.3. Вершина Bezier (Безье)
Рис. 3.4. Вершина Bezier Corner (Угол Безье)
Такое разнообразие типов вершин позволяет очень гибко создавать сплайны любых форм. Обратите внимание на следующие рекомендации по использованию типов вершин:
? если нужно построить фигуру с изломами по пути следования сплайна – используйте вершины Corner (Угловая);
? при необходимости плавного искривления сплайна применяйте сглаженные вершины Smooth (Сглаженная);
? если кроме плавного искривления сплайна необходим контроль над кривизной сплайна в данной точке, используйте вершины Bezier (Безье);
? вершины Bezier Corner (Угол Безье) дают полный контроль над сегментами сплайна в данной точке, но работать с ними нужно крайне осторожно, так как при визуализации они могут создавать на форме изломы и перепады (если, конечно, это не соответствует вашей задумке).
Создание сплайнов
Рассмотрим, как создаются сплайны. Щелкните на кнопке Shapes (Формы)
вкладки Create (Создание) командной панели и выберите в списке объектов строку Splines (Сплайны). В свитке Object Type (Тип объекта) появится набор стандартных примитивов. Здесь можно выбрать готовые примитивы, такие, как Rectangle (Прямоугольник), NGon (Многоугольник), Helix (Спираль), Text (Текст), Ellipse (Эллипс) и т. д., или, используя примитив Line (Линия), построить что-то новое.
Если вам нужны готовые примитивы, выберите в свитке Object Type (Тип объекта) объект требуемого типа. В нижней части появятся свитки с параметрами выбранного объекта: Rendering (Визуализация), Interpolation (Интерполяция), Creation Method (Метод создания), Keyboard Entry (Ввод с клавиатуры), Parameters (Параметры).
В свитке Rendering (Визуализация) вы можете установить флажок Enable In Renderer (Показывать при визуализации), позволяющий отображать сплайн при визуализации, и задать значения параметров Thickness (Толщина), Sides (Количество сторон) и Angle (Угол). В тех случаях, когда нужно построить криволинейный объект с одинаковым диаметром по всей длине, не задумываясь пользуйтесь сплайновым способом как самым быстрым и наименее ресурсоемким.
В свитке Creation Method (Метод создания) вы можете задать способ построения: Edge (Ребро), то есть от края, или Center (От центра). Для объекта Line (Линия) в свитке Creation Method (Метод создания) указывается тип вершин, используемых при построении. Для Arc (Дуга) задается способ построения (либо сначала строятся два конца, а затем середина, либо сначала определяется середина дуги, а затем строятся ее конечные точки).
При помощи свитка Interpolation (Интерполяция) можно настроить параметры интерполяции криволинейных сегментов сплайна, то есть задать количество точек излома криволинейных сегментов с помощью счетчика Steps (Количество шагов), а также установить флажок Optimize (Оптимизация), который заставит программу оптимизировать сплайн путем сброса в ноль количества шагов для его линейных сегментов.
Редактирование сплайнов
Сплайны можно редактировать на четырех уровнях:
? формы, иначе говоря, на уровне объекта;
? вершин;
? сегментов;
? сплайна как составляющей части объекта.
Доступ к редактированию сплайнов на уровне отдельных сегментов и вершин осуществляется с помощью кнопки Modify (Изменение)
СОВЕТ
При возможности преобразуйте сплайн в Editable Spline (Редактируемый сплайн). Сделать это можно, щелкнув правой кнопкой мыши на сплайне и выполнив команду Convert To ? Convert to Editable Spline (Преобразовать ? Преобразовать в редактируемый сплайн). Хотя при этом теряются параметрические свойства объекта (вы больше не сможете использовать такие параметры объекта, как ширина, высота, радиус и т. д.), вы получите доступ к редактированию дополнительных параметров объекта на уровне подобъектов.
Редактирование сплайна на уровне формы позволяет присоединять к нему другие готовые сплайны, создавать отрезки линий в качестве сегментов текущего сплайна и изменять параметры интерполяции криволинейных сегментов. Для присоединения к выделенной сплайновой форме другого сплайна щелкните на кнопке Attach (Присоединить) свитка Geometry (Геометрия), при этом кнопка подсветится цветом. Переместите указатель в окно проекции и укажите на присоединяемый сплайн. Когда указатель примет специальный вид, щелкните левой кнопкой мыши. Два сплайна будут соединены в одну форму.
Редактирование сплайнов на уровне вершин позволяет создать сплайн практически любой конфигурации. Для перехода в режим редактирования вершин в свитке Selection (Выделение) щелкните на кнопке Vertex (Вершина)