Совет. Ряды контрольных точек удобно выбирать при помощи компонента Hull. Строго говоря, Hull - не компонент, а просто экранная сетка, соединяющая контрольные вершины. С их помощью можно не только выбирать целые ряды точек в обоих направлениях, но и контролировать «запутанность» сетки контрольных вершин.
Главное ограничение сплайновых поверхностей
Еще раз напомню об одном недостатке сплайновых поверхностей, из-за которого и было придумано столько различных изощренных инструментов.
Любая сплайновая поверхность всегда является сеткой из изопарм. Даже сплайновая сфера представляет собой сетку из меридианов и параллелей, состоящую из прямоугольных ячеек. Сплайновую поверхность всегда можно развернуть в прямоугольную сетку-плоскость, или наоборот, свернуть из прямоугольной сетки. Об этом надо помнить всегда. Это природа сплайновых поверхностей и следствие их математического описания, и с этим ничего нельзя сделать. Напомню, что обыкновенную руку можно представить как минимум одиннадцатью объектами: ладонь из сферы, пять пальцев из цилиндров и еще пять соединений-колец между ладонью и пальцами. Если пальцы и соединения-кольца еще можно пытаться «сшить» в один объект, то сферу с пальцами нельзя соединить в один объект в принципе.
Примечание. Конечно, можно взять сферу, задать ей 10000 контрольных вершин и вытянуть из нее руку с пальцами. Это будет один объект, но подумайте о том, как это можно сделать, и самое главное, на что сгодится такая поверхность -ведь к анимации она будет явно непригодна.
Дело в том, что сплайновые поверхности присоединяются друг к другу краями (или границами). Операцию Attach Surfaces, «сшивающую» две поверхности в одну, всегда используют для присоединения края поверхностей. Нельзя объединить две поверхности в одну произвольным образом, можно только подтянуть их края друг к другу, а затем соединить их в новую сетку из изопарм. Перед применением операции Attach Surfaces всегда представляйте себе, как будет выглядеть сетка из изопарм для новой поверхности.
Кроме того, операция Attach Surfaces не работает с краями отверстий, вырезанных с помощью Trim Tool, поэтому объединять поверхности вы сможете, только соединяя их реальные границы.
Ограничением служит и то, вы не можете соединить только часть границы поверхности с другой поверхностью. То есть края объектов соединяются целиком.
Конечно, операции Align и Stitch, позволяют «подогнать» часть края одной поверхности к границе другой. Но они не объединяют две поверхности в одну, а речь сейчас идет именно об этом.
Но даже если края двух поверхностей находятся друг напротив друга и примерно совпадают по размеру, это еще не значит, что эти поверхности можно успешно «сшить» в один объект с помощью Attach Surfaces. Края поверхностей должны быть совместимы.
Совместимые края поверхностей
Интуитивно понятно, что если вы собираетесь объединить две поверхности в одну вдоль какого-нибудь края, то лучше будет, если количество сегментов вдоль этих краев будет одинаковым.
Дальше я вместо «количество сегментов» буду иногда употреблять выражение «количество изопарм», хотя количество видимых изопарм на экране отнюдь не всегда совпадает с количеством сегментов на поверхности. Чтобы эти «количества» совпадали, то есть чтобы увидеть на экране настоящее количество сегментов в виде изопарм, надо либо перейти в режим wireframe (клавиша 4) и нажать клавишу 1, либо включить в окне камеры режим Shading=>Shade Options=>Wireframe on Shaded.