Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Что значит “рациональный”?

 

 

До сих пор мы рассмотрели все части, которые составляют аббревиатуру NURBS за исключением одного “рациональность”. В-сплайн является рациональным, если каждой вершине его определяющего многоугольника соответствует своё значение веса точки. Вес точки можно рассматривать как силу влияния данной точки на кривую. Рассмотрим рис.3.9.

 

Рис.3.9. Рациональность В-сплайнов

 

Здесь мы пытаемся определить дугу круга в 900 используя квадратичный В-сплайн, заданный тремя вершинами многоугольника. Т.к. мы знаем что кривая приближается на своих концах к касательной, проведённой к конечным точкам наклонных, то для того, чтобы получить дугу 900 обе наклонных многоугольника должны быть перпендикулярны. Подгоняя многоугольник, как показано на рисунке, но оставляя веса точек равными 1, получается верхняя кривая, показанная на рисунке, очевидно, не круглой формы. Первым побуждением было бы сдвинуть вниз вершину В1 пока не получится фигура более круглой формы. Хотя этого могло быть и достаточно для приближения к круглой форме, это не может быть правильно по двум причинам. Первая, двигать вниз В1 означает, что две наклонные больше не будут перпендикулярными, т.е. касательные к конечным точкам кривой не могут быть перпендикулярными. Второе, и, возможно, более важное, ранее мы показали, что двигая вершину контрольной сети, все точки кривой двигаются в том же направлении, что и вершина, но на разные расстояния. Здесь же нам нужно, чтобы точки двигались от В1 в радиальном направлении. Это достигается изменением веса вершины В1. В данном примере вес точки уменьшили так, чтобы получился круг. Существует точное распределение весов определяющего многоугольника, которое позволяет получить круг. Хотя в определённых случаях это распределение легко вычисляется, оно не является общим случаем. Для большинства моделей, выполненных в FastShip, достаточным является приближённо построить круговую область, используя вершины со стандартными весами. Курс передового обучения FastShip предоставляет специальные примеры того, как использовать В-сплайны для получения круговых областей.

От кривых к поверхностям

 

Рис.3.10. От кривых к поверхностям.

 

Всё, что уже говорилось о NURBS кривых, справедливо и для NURBS поверхностей. Также существует определяющий многоугольник, но теперь он распространяется на два напраления и называется контрольной сеткой. Теперь мы будем говорить о пространстве двух параметров u-v. Большинство свойств, рассмотренных ранее, подходят и для пространства двух параметров. Кроме того, для поверхностей будет иметь место дополнительное свойство: в любой точке поверхности пересечение двух касательных к поверхности даёт внешнюю нормаль. И, наконец, как показано на рис.3.10, поверхность меньше повторяет форму контрольной сетки, чем кривая. Это является следствием того, что FastShip работает с тензорными поверхностями. Поэтому в случае кривой сдвиг вершины определяющего многоугольника на одну единицу вверх вызывает сдвиг самой кривой на полединицы вверх, а в случае поверхности сдвиг вершины сетки можно рассматривать как сдвиг поверхности на полединицы в каждом направлении, т.е. в итоге на четверть вверх.

Граничные условия и сломы

 

зеркальное г.у.                  конечное г.у. натурального сплайна

Рис.3.11. Граничные условия FastShip

 

Известно, что NURBS кривая при подходе к своим конечным точкам приближается к касательной, проведённой в этих точках. Представим плазовщика, изображающего окончания ватерлиний гибкой рейкой. Если плазовщик расставит точки по рейке так, что последняя точка окажется на самой кромке ватерлинии, а рейка может принимать любую форму, то получится визуализированное конечное условие натурального сплайна(см. рис.3.11). Однако часто случается, что окончания ватерлиний проходят перпендикулярно диаметральной плоскости, например, эллиптические окончания ватерлиний. Плазовщик будет вынужден чрезмерно изогнуть линейку или воспользоваться корабельным лекалом. Пользуясь В-сплайном данная проблема легко решается, установив наклонную определяющего многоугольника перпендикулярно диаметральной плоскости. Это называется зеркальным граничным условием. Отсюда видно, насколько однозначно В-сплайн определяет такое конечное условие.

Рассмотрим сломы кривых и поверхностей. Мы уже знаем, как можно использовать многозначные вершины или многозначные узлы, чтобы заставить В-сплайн проходить через заданную точку. Подразумевается, чтобы получить слом кривой нужно использовать любой приём, который сделал бы наклонные в этой точке неколлинеарными. Тогда возникает вопрос, что лучше использовать многозначные вершины или многозначные узлы? По этому поводу можно сделать два замечания. Первое, многозначные узлы считаются более предпочтительным вариантом, т.к. они хорошо определяются в рамках NURBS математики и не требуют дополнительной обработки. Знайте, что некоторые приложения, использующие в своей работе математику NURBS, не работают с многозначными вершинами, поэтому если вы планируете переместить свою работу в другое приложение, то возможно столкнетесь с проблемой дополнительной доработки. Второе замечание заключается в следующем: многозначный узел лучше использовать, если слом имеет большую длину, как, например, скуловой слом, а многозначные вершины лучше на локальных сломах, например, транец или палубный слом.

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...