Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема_Кривые в КГ.doc
Скачиваний:
12
Добавлен:
15.09.2019
Размер:
627 Кб
Скачать
☆
    1. Свойства кривых Безье

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

  • Начальная и конечная контрольные точки лежат на кривой.

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

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

  • Точки на краях касательных будут располагаться на кривой только в том случае, если последняя представляет собой прямую линию.

  • Поскольку кривая Безье представляет собой взвешенное усреднение всех ее контрольных точек с положительными весами, а сумма их равна единице, кривая всегда располагается внутри выпуклого многоугольника из ее контрольных точек (рис. 1.17), как и рассмотренная выше NURBS-кривая.

Кривую Безье можно рассматривать как пошаговое уточнение формы многоугольника, получаемого последовательным соединением ее контрольных точек (рис. 1.18–1.21). При этом кривая Безье начинается и заканчивается в конечных точках данного многоугольника, а форма определяется относительным расположением оставшихся точек, через которые в общем случае она не проходит.

Рис. 1.17 Кривая в выпуклом многоугольнике

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

Рис. 1.18. Первый этап аппроксимации кривой

Рис. 1.19. Второй этап аппроксимации кривой

Рис. 1.20. Третий этап аппроксимации кривой

Рис. 1.21. Итоговая ломаная кривая

4.2 Канонический вид кривой Безье

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

Общий вид кривой Безье имеет вот такую конструкцию (рис. 1.22).

Рис. 1.22. Канонический вид кривой Безье

Это уже не математическое описание, а сугубо прикладное отображение, именно то, которое знакомо всем пользователям векторных программ.

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

Для построения этой кривой требуются четыре контрольные точки. Но кривая физически проходит только через две из них, они получили название опорных. Одна из точек называется начальной (start point), а другая – конечной (end point). Две точки остаются в стороне, они получили название управляющих (control point).

Для того чтобы их не "потерять" (особенно когда в документе кривых насчитываются многие десятки и сотни), в программах векторной графики, да и в любых других программах, управляющие точки соединяют с опорными точками какой-нибудь линией. Иногда пунктирной, иногда тонкой сплошной.

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

Справка. Слово "вектор" латинского происхождения: "vector" переводится как "несущий", в математике используется для обозначения отрезка определенной длины и направления. Два вектора считаются равными лишь в том случае, если у них не только одинаковы длины, но и совпадают направления (то есть они параллельны и одинаково ориентированы). При изменении направления меняется знак вектора. В естественных науках векторы изображают величины, которые имеют направление, например сила, скорость, ускорение и т. д.

Направление кривой, может быть, не всегда очевидно для пользователей векторной программы, но для самой программы оно всегда существенно. Направление контуров находит свою реализацию в так называемых составных контурах (compound paths). Если два векторных объекта, например образующих букву "о" и расположенных друг на друге, направлены в противоположные стороны (рис. 1.23), то изображение получится верное (с отверстием посередине).

Если те же векторные контуры направлены в одну сторону, то в этом случае один контур просто перекрывает другой, не образуя прозрачной области (рис. 1.24).

Рис. 1.23. Составной контур с разнонаправленными векторами

Рис. 1.24. Составной контур с однонаправленными векторами