ivanstudent

Путь к Файлу: /Введение в компьютерную графику / 15 / 61-64.DOC

Ознакомиться или скачать весь учебный материал данного пользователя
Скачиваний:   0
Пользователь:   ivanstudent
Добавлен:   24.12.2014
Размер:   69.5 КБ
СКАЧАТЬ

3.5. Сглаживающие кривые Безье

 

          Как уже отмечалось выше, сглаживающая кривая не должна (можно сказать точнее «не обязана») проходить через заданные точки, в отличие от интерполяционной. Тем не менее для нее необходимо иметь некоторый алгоритм построения, по возможности определяющий такую кривую однозначно. Рассмотрим класс такого рода кривых, носящих имя Безье.

          Во многих случаях используется так называемое параметрическое представление кривой. Вообще известны следующие варианты задания кривой (для простоты рассмотрим случай плоской кривой в системе координат OXY).

Наиболее привычна форма записи уравнения кривой в явной форме:

                                                   y = y(x).

Неявной формой задания кривой называется уравнение вида 

f(x, y) = 0.

Наконец, если уравнение кривой задано в виде

                                       x = x(t), y = y(t),

говорят о параметрической форме.

С формальной точки зрения все эти способы равноправны, поскольку допускают, как правило, преобразование из одной формы задания кривой в другую. Но в конкретных случаях преимущества разных форм записи могут быть значительными. Рассмотрим достаточно простую кривую – окружность радиуса R, заданную уравнением

x2  + y2 = R2.

 

Это вторая из указанных выше форм задания кривой – в неявном виде. Преобразование этого уравнения к явной форме даст соотношение

         61-64

 

Знаки + и – перед радикалом определяют соответственно верхнюю и нижнюю части окружности, и для определенности выбора той или иной части и соответствующего знака нужно формулировать дополнительное условие.

          В то же время можно задать уравнение окружности в параметрическом виде:

 

                             x = R*cos t,     y = R*sin t.

 

Возведя первое и второе соотношения в квадрат и суммируя, получим исходную запись уравнения окружности, далее можно перейти и к явной форме. Но преимущества параметрического представления очевидны: каждому конкретному значению параметра t отвечает вполне определенная точка окружности. Если  рассмотреть более сложные кривые, например, типа спиралей, когда одному значению х отвечает множество значений у (иногда теоретически бесконечное), то для них параметрическое представление становится единственно приемлемым.

 

Определение

Параметрически заданной кривой называется множество  точек  М(х, у, z), для которых

 

          X = x(t),       y = y(t),        z = z(t),         a <= t <= b,       (*)

 

где x(t), y(t), z(t) – непрерывные на отрезке [a, b] функции.

          Далее будем принимать, что  a = 0, b = 1,   т.е. параметр t  меняется в пределах от 0 до 1. Этого всегда можно добиться заменой параметра t на u по соотношению

u = (t – a) / (b – a),

и далее роль параметра t будет играть величина u, меняющаяся уже в пределах от 0 до 1. При t = a  будет  u = 0,  при    t = b   соответственно  u = 1.

Иногда три соотношения (*) заменяют одним равенством векторного вида:

r = r(t),

причем вектор r(t) имеет составляющие x(t), y(t), z(t), что записывается в виде

 

r(t) = (x(t), y(t), z(t)).

 

Параметр t задает порядок прохождения точек пространства при монотонном изменении t; говорят, что тем самым задается ориентация параметризованной кривой.

 

          Определение

          Кривая g называется регулярной, если в каждой ее точке существует касательная, определяемая единственным образом, и ее ориентация меняется непрерывно по мере движения точки вдоль кривой.

По существу это определение гладких кривых, т.е. кривых, не имеющих угловых и других особых точек. При этом самопересекающиеся кривые могут быть регулярными – лишь бы при изменении параметра t направление движения вдоль кривой в точке пересечения определялось однозначно.

Далее будем говорить о регулярных кривых. Для них, в соответствии с данным выше определением, можно всегда построить касательную в любой точке однозначно ориентированную, причем ориентация касательной определяется ее единичным вектором по формуле

61-64

в этой формуле надчерком обозначаются векторные величины, величина без надчерка – модуль соответствующего вектора.

          Далее рассмотрим плоские кривые на плоскости OXY. Для них, естественно, справедливы все утверждения и определения, сделанные выше для общего пространственного случая.

          Пусть на этой плоскости задан набор точек V0, V1, …, Vm. Индексы обозначают номера точек, причем нумерация определяется сразу и далее не меняется. В соответствии с этой нумерацией последовательно соединим точки отрезками и получим ломаную линию. Эта линия для заданного набора или массива точек называется контрольной ломаной и обозначается как

                                      V = V[V0, V1, … , Vm].

При этом каждая из точек Vi определяется парой чисел на плоскости – своими координатами: Vi = Vi [xi, yi].

          Зададимся задачей: построить сглаживающую кривую для массива V.

          Один из наиболее распространенных алгоритмов построения сглаживающих кривых связывается с именем Безье.

 

          Определение:

          Кривая Безье для массива точек V определяется уравнением

(*)

 

 
61-64  

Здесь коэффициенты определяются так же, как коэффициенты в разложении бинома Ньютона:

                                      61-64

число сочетаний из m по i. При вычислении этих коэффициентов нужно помнить, что

1! = 0! = 1.

Кривая Безье, которую можно теперь построить на основе данного определения, обладает следующими свойствами.

          1. Кривая гладкая, что означает, как уже отмечалось, наличие касательной в каждой ее точке, определенной однозначно.

          2. Кривая начинается в точке V0 и заканчивается в точке Vm, при этом она касается отрезка V0V1 на выходе из первой точки, и касается отрезка Vm-1Vm при подходе к последней.

3. Кривая Безье всегда лежит внутри оболочки – ломаной (контрольной ломаной).

Последнее является следствием того, что функциональные коэффициенты в (*)

61-64

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

61-64

          Порядок нумерации точек очень важен для построения сглаживающей кривой Безье.

Рис.14. Примеры различных кривых Безье для одного и того же

набора точек с различной нумерацией

 

На рис.14 показано влияние нумерации на вид кривых Безье. Как видно, сглаживающая кривая «пытается повторить» контрольную ломаную, причем в зависимости от порядка нумерации точек можно считать варианты сглаживания «удачными» или нет.

Недостатки кривой Безье можно сформулировать следующим образом.

          1. Степень функциональных коэффициентов растет вместе с увеличением числа точек массива Vi.

2. При добавлении или изменении хотя бы одной точки кривая меняется. Для построения новой кривой требуется провести перерасчет параметрической зависимости (*).

          Можно отметить, что эти недостатки «перекликаются» с аналогичными недостатками, которые отмечались при использовании интерполяционного полинома Лагранжа. Очевидно, что и преодоление их может быть сделано в известном отношении аналогичным способом. Если интерполяционные кривые строились в виде отдельных полиномиальных зависимостей невысокой степени и потом соответствующие кривые «сшивались» между собой, то и при построении сглаживающих кривых решение следует искать на этом же пути. Один из способов решения заключается в использовании так называемых базовых сплайнов или В-сплайнов (Base-spline). Проблема сводится к другому способу определения коэффициентов в зависимости типа (*).

Наверх страницы

Внимание! Не забудьте ознакомиться с остальными документами данного пользователя!

Соседние файлы в текущем каталоге:

На сайте уже 21970 файлов общим размером 9.9 ГБ.

Наш сайт представляет собой Сервис, где студенты самых различных специальностей могут делиться своей учебой. Для удобства организован онлайн просмотр содержимого самых разных форматов файлов с возможностью их скачивания. У нас можно найти курсовые и лабораторные работы, дипломные работы и диссертации, лекции и шпаргалки, учебники, чертежи, инструкции, пособия и методички - можно найти любые учебные материалы. Наш полезный сервис предназначен прежде всего для помощи студентам в учёбе, ведь разобраться с любым предметом всегда быстрее когда можно посмотреть примеры, ознакомится более углубленно по той или иной теме. Все материалы на сайте представлены для ознакомления и загружены самими пользователями. Учитесь с нами, учитесь на пятерки и становитесь самыми грамотными специалистами своей профессии.

Не нашли нужный документ? Воспользуйтесь поиском по содержимому всех файлов сайта:



Каждый день, проснувшись по утру, заходи на obmendoc.ru

Товарищ, не ленись - делись файлами и новому учись!

Яндекс.Метрика