Иллюстрированный самоучитель по Digital Graphics




Общие принципы векторной графики - часть 2


  • разбивать линии на достаточно мелкие (короткие) фрагменты;
  • выбрать наиболее простую формулу (функцию) для их описания.

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

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

    Самым главным достоинством такой технологии является, естественно, простота; для каждой точки достаточно всего двух чисел, определяющих координаты этих точек. Таким образом, огромную кривую можно описать всего-навсего сотней пар чисел.

    Однако указанная простота является причиной серьезных недостатков.

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

  • Форма объекта, аппроксимированного линейными отрезками, может изменяться, например при вращении.

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

    Замечание

    Такой принцип по-прежнему используется, например в системах, связанных с режущими устройствами.

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

    Пример-метафора

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

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

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




    Содержание  Назад  Вперед