Введение в цифровую графику

         

Исторические предшественники


Учение о природе будет содержать науку в собственном смысле лишь в той мере, в какой может быть применена в нем математика.

Иммануил Кант

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


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

Пытливая мысль и изобретательность нашли оригинальный способ: в больших помещениях нужную форму кривой получали, выгибая длинные тонкие полоски дерева или металла. Такие полоски называли сплайнами (splines). Для того чтобы придать упругой полоске нужную форму, ее фиксировали в требуемых точках с помощью особых свинцовых грузил, которые за сходство формы назывались "утятами" (ducks). Результирующая кривая получатась гладкой, а форма изменялась перемещением грузил (рис. 12.1).

Рис. 12.1. Чертежные сплайны

Впоследствии понятие сплайна стали применять в математике для похожей цели — описания кривых.

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

Справка

Вейершрасс Карл (1815—1897) — немецкий математик, иностранный член-корреспондент (1864) и иностранный почетный член (1895) Петербургской Академии Наук. Известен своими трудами в области математического анализа, теории функций и линейной алгебры. Главным его научным достижением считается система логического обоснования математического анализа.

Справка

Слово "полином" происходит от греческого слова "poly", что означает "многочисленный", и латинского слова "nomen" — "имя", русский эквивалент этого понятия — многочлен. Полином представляет собой алгебраическую сумму конечного числа одночленов, например для одного переменного х многочлен имеет вид

y = a0xn +a1xn-1...+an,

где а — коэффициенты многочлена, п — показатели степеней (целые неотрицательные числа). В курсе средней школы нам известны многочлены первой, второй и третьей степени.

Вопрос о построении аппроксимирующего многочлена привлек многих математиков. Среди них одну из решающих ролей сыграл выдающийся ученый Сергей Натанович Бернштейн, который закончил Харьковский университет, учился в Сорбонне, а в начале XX века предложил новое доказательство теоремы Вейерштрасса с помощью теории вероятностей. В этом случае необходимый полином строится в явном виде (не параметрически). Именно данный полином и стал основой сплайновых кривых, в частности NURBS-кривых и кривых Безье.

Пример аппроксимирования кривых Безье см. в разд. "Свойства кривых Безье" данной главы.

Справка

Бернштейн Сергей Натанович (1880—1968)— математик, академик Академии Наук СССР и Академии Наук Украины. Основные труды относятся к области теории дифференциальных уравнений (условия аналитичности решений), теории функций (приближение функций многочленами), теории вероятностей (аксиоматика, предельные теоремы).

Справка

Аппроксимация происходит от латинского слова "approximo", что переводится как "приближаюсь", в математике это означает замену одних объектов, например сложных функций, другими, более простыми, которые являются более или менее близкими к исходным. Самый простой пример аппроксимации мы уже упоминали — это замена кривых линий совокупностью прямых, образующих ломаную линию, примерно совпадающую с исходной.

К сожалению, нашему великому соотечественнику не очень повезло, поскольку чаще известны имена людей, применивших открытия, чем их авторов. То же случилось с кривыми, которые известны всему миру под именем кривых Безье.

Справка

Безье (Bezier) Пьер Этьен (1910 — 1999) — французский инженер и ученый, который, поступив в 1933 году на завод Рено, с 1960-х годов начал исследования в области компьютерного моделирования, в частности, применил на практике компьютерное проектировани теортю сплайнов трехстепенных функций, разработанных именно Сергеем Натановичем Бернштейном. Пьер Безье — автор четырех книг и множества статей по этой тематике, он почетный доктор многих ведущих университетов мира.

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

Замечание

В 1981 году состоялась знаменитая выставка "Москва — Париж", сначала во Франции, потом — в СССР. На выставке демонстрировались шедевры русской и французской культуры конца XIX — начала XX веков. Балет, живопись, графика, скульптура, поэзия двух стран имеют очень тесные связи и взаимовлияние. Математика и техника — в том числе. Русский математик разработал довольно абстрактный математический аппарат, а затем этой "абстракции" нашлось применение в виде конкретных очертаний кузова французского автомобиля.


Содержание раздела