Lizinovka36.ru

Лизиновка

Векторная графика

15-04-2023

Пример, показывающий разницу между векторной, фрактальной и растровой графикой при увеличении.
a: исходное векторное изображение;
b: иллюстрация, увеличенная в 8 раз как векторное изображение;
c: иллюстрация, увеличенная в 8 раз как растровое изображение.

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

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

Содержание

Обзор

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

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

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

Термин «векторная графика» используется в основном в контексте двухмерной компьютерной графики.

Способ хранения изображения

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

  1. координаты центра окружности;
  2. значение радиуса r;
  3. цвет заполнения (если окружность не прозрачная);
  4. цвет и толщина контура (в случае наличия контура).

Преимущества векторного способа описания графики над растровой графикой

  • Размер, занимаемый описательной частью, не зависит от реальной величины объекта, что позволяет, используя минимальное количество информации, описать сколько угодно большой объект файлом минимального размера.
  • В связи с тем, что информация об объекте хранится в описательной форме, можно бесконечно увеличить графический примитив, например, дугу окружности, и она останется гладкой. С другой стороны, если кривая представлена в виде ломаной линии, увеличение покажет, что она на самом деле не кривая.
  • Параметры объектов хранятся и могут быть легко изменены. Также это означает что перемещение, масштабирование, вращение, заполнение и т. д. не ухудшает качества рисунка. Более того, обычно указывают размеры в аппаратно-независимых единицах (англ. device-independent unit), которые ведут к наилучшей возможной растеризации на растровых устройствах.
  • При увеличении или уменьшении объектов толщина линий может быть задана постоянной величиной, независимо от реального контура.

Фундаментальные недостатки векторной графики

  • Не каждый объект может быть легко изображен в векторном виде — для подобного оригинальному изображению может потребоваться очень большое количество объектов и их сложности, что негативно влияет на количество памяти, занимаемой изображением, и на время для его отображения (отрисовки).
  • Перевод векторной графики в растр достаточно прост. Но обратного пути, как правило, нет — трассировка растра, при том что требует значительных вычислительных мощностей и времени, не всегда обеспечивает высокое качество векторного рисунка.
  • Преимущество векторной картинки — масштабируемость — пропадает, когда начинаем иметь дело с особо малыми разрешениями графики (например, иконки 32×32 или 16×16). Чтобы не было «грязи», картинку под такие разрешения приходится подгонять вручную.

Типичные примитивные объекты

Этот список неполон. Есть разные типы кривых (Catmull-Rom сплайны, NURBS и т. д.), которые используются в различных приложениях.

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

Векторные операции

Векторные графические редакторы, типично, позволяют вращать, перемещать, отражать, растягивать, скашивать, выполнять основные аффинные преобразования над объектами, изменять z-order и комбинировать примитивы в более сложные объекты.

Более изощрённые преобразования включают булевы операции на замкнутых фигурах: объединение, дополнение, пересечение и т. д.

Векторная графика идеальна для простых или составных рисунков, которые должны быть аппаратно-независимыми или не нуждаются в фотореализме. К примеру, PostScript и PDF используют модель векторной графики.

См. также

Ссылки

  • Ч. А. Кариев, Масштабируемая векторная графика (Scalable Vector Graphics) (бесплатный курс), 07.11.2007

Векторная графика.

© 2016–2023 lizinovka36.ru, Россия, Тюмень, ул. П.Каркатеевы 23, +7 (3452) 33-75-16