logo
CG

34. Кривая Безье. Геометрическая интерпретация.

Кривы́е Безье́ или Кривы́е Бернште́йна-Безье́ были разработаны в 60-х годах XX века независимо друг от друга Пьером Безье (Pierre Bézier) из автомобилестроительной компании «Рено» и Полем де Кастельжо (Paul de Faget de Casteljau) из компании «Ситроен», где применялись для проектирования кузовов автомобилей.

Несмотря на то, что открытие де Кастельжо было сделано несколько ранее Безье (1959), его исследования не публиковались и скрывались компанией как производственная тайна до конца 1960-х.

Кривая Безье является частным случаем многочленов Бернштейна, описанных Сергеем Натановичем Бернштейном в 1912 году.

Впервые кривые были представлены широкой публике в 1962 году французским инженером Пьером Безье, который, разработав их независимо от де Кастельжо, использовал их для компьютерного проектирования автомобильных кузовов. Кривые были названы именем Безье, а именем де Кастельжо назван разработанный им рекурсивный способ определения кривых (алгоритм де Кастельжо).

Впоследствии это открытие стало одним из важнейших инструментов систем автоматизированного проектирования и программ компьютерной графики.

Определение

Кривая Безье — параметрическая кривая, задаваемая выражением

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

, где n — степень полинома, i — порядковый номер опорной вершины

Геометрическая интерпретация

Следующая иллюстрация демонстрирует этот процесс для кубической кривой Безье:

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

Описанный алгоритм справедлив для нерациональных кривых Безье. Для вычисления рациональных кривых в , можно спроецировать точку в ; например кривая в трехмерном пространстве должна иметь опорные точки и веса спроецированные в весовые контрольные точки . Затем обычно алгоритм переходит к интерполяции в . Результирующие четырехмерные точки могут быть спроецированы обратно в трехмерное пространство с помощью перспективного деления.

В целом, операции с рациональными кривыми (или поверхностями) эквивалентны операциям с нерационалиными кривыми в проективном пространстве. Представление опорных точек как взвешенных часто бывает удобно для определения рациональных кривых.