Структура (structure)#

Многие понятия в контексте кривых, особенно NURBS, напрямую переносятся на NURBS-поверхности, к примеру – контрольные точки, упорядочивание, вес, разрешение и т. д.. Здесь мы просто поговорим о различиях.

Очень важно понимать разницу между кривыми NURBS и NURBS-поверхностями: у первых одно измерение, у вторых – два. Blender внутренне обрабатывает NURBS-поверхности и кривые NURBS совершенно по-разному. Есть несколько атрибутов, которые их разделяют, но самым важным является то, что кривая NURBS имеет одну ось интерполяции (U), а NURBS-поверхность – две оси интерполяции (U и V).

Однако вы можете иметь «2D» поверхности, сделанные из кривых (используя инструменты экструдирования, или, в меньшей степени, заполнение замкнутых 2D кривых). И вы можете иметь «1D» кривые, сделанные из поверхностей, как NURBS-поверхность только с одним рядом (либо в направлении U, либо в направлении V) контрольных точек, создающих только кривую…

Визуально вы можете определить, что есть что, войдя в режим редактирования и посмотрев на заголовок 3D-вьюпорта: заголовок будет показывает Surface или Curve как один из вариантов меню. Также вы можете экструдировать всю кривую-NURBS-поверхность, чтобы создать поверхность, но вы не можете сделать это с простой кривой NURBS.

Контрольные точки, ряды и сетка#

Контрольные точки для NURBS-поверхностей те же, что и для кривых NURBS. Однако их расположение довольно ограничено. Понятие „сегмент“ исчезает, заменяясь „рядами“ и общей „сеткой“.

„Ряд“ – это набор контрольных точек, формирующих одну „линию“ в одном направлении интерполяции (немного похоже на рёберные петли для мешей). Таким образом, на NURBS-поверхности есть «ряды по U» и «ряды по V». Ключевым моментом является то, что все ряды заданного типа (U или V) имеют одинаковое количество контрольных точек. Каждая контрольная точка принадлежит ровно одному ряду по U и одному ряду по V.

Всё это образует „сетку“ или „контейнер“, форма которого управляет формой NURBS-поверхности. Немного похоже на решётку (lattice)

Это очень важно понять: вы не можете добавить одну контрольную точку к NURBS-поверхности; вы должны добавить целый ряд по U или по V за раз (на практике, чтобы их добавить, вы обычно используете инструмент Extrude или, возможно, Duplicate…), содержащий точно такое же количество точек, как и другие ряды. Это также означает, что вы можете «объединять» разные части поверхностей, только – если хотя бы один из их рядов совпадает друг с другом.

Вес (weight)#

Аналогично NURBS сплайнам – контрольные точки NURBS-поверхности имеют свойство веса. Это свойство веса управляет степенью влияния контрольной точки на поверхность. Этот вес не следует путать с целевым весом, который используется только для симуляции мягких тел. Вес контрольной точки NURBS можно настроить в числовом поле W на панели Transform.

На рис. Одна контрольная точка с весом 5. только одна контрольная точка, обозначенная как „C“, имеет установленный «вес» на 5.0, в то время как все остальные имеют значение по умолчанию 1.0. Как вы можете видеть – эта контрольная точка тянет поверхность к себе.

../../_images/modeling_surfaces_structure_weight.png

Одна контрольная точка с весом 5.#

Примечание

Если все контрольные точки имеют одинаковый „вес“, то они фактически нейтрализуют друг друга. Именно разница в весах заставляет поверхность двигаться к контрольной точке или от неё.

Предустановленные веса#

С помощью NURBS можно создавать безупречные формы, такие как окружности, цилиндры и сферы (обратите внимание, что окружность-Безье не является истинной окружностью). Чтобы создать безупречные окружности, сферы или цилиндры, вы должны задать определённые значения веса для контрольных точек. Это не интуитивно понятно, и вам следует прочитать больше о NURBS, прежде чем это пробовать.

Чтобы создать сферу с 2D-поверхностями, используется тот же принцип, что и с 2D-окружностью. Вы заметите, что для создания сферы – необходимы четыре разных веса .

../../_images/modeling_surfaces_structure_weight-sphere.png

Поверхность-сфера.#