1.16. Векторные форматы
Векторные форматы
Векторное изображение — это описание графики через математические примитивы: точки, линии, кривые Безье, окружности, прямоугольники и полигоны. Каждый объект задаётся координатами, параметрами формы (толщина, радиус, угол), цветом заливки и обводки. Такой подход позволяет масштабировать изображение в любую сторону без потери чёткости — контуры остаются гладкими даже при увеличении в тысячу раз. Векторная графика идеальна для схем, логотипов, карт, чертежей и интерфейсных элементов, где важны точность, компактность и адаптивность.
SVG
SVG (Scalable Vector Graphics) – векторный формат на основе XML, масштабируется без потерь, обладает маленький размер, открывается даже текстовым редактором, используется для логотипов, иконок, веб-графики.
Формат SVG был разработан консорциумом W3C и впервые стандартизирован в 2001 году как открытый, XML-основанный формат для векторной графики в вебе. SVG-файл представляет собой текстовый документ, в котором геометрия описывается с помощью тегов — <circle>, <rect>, <path>, <text> — и атрибутов (cx, cy, r, d, fill, stroke). Благодаря XML-структуре, SVG легко редактируется вручную, генерируется программно, анимируется через CSS или JavaScript, и встраивается прямо в HTML (без тега <img> — как часть DOM). SVG поддерживает градиенты, фильтры (тени, размытие), маски, клиппинги и интерактивность (события onclick, onhover). Размер файла минимален для простых форм (логотип из 10 элементов — 2–5 КБ), но растёт при сложных кривых. SVG используется в веб-дизайне (иконки, иллюстрации), мобильных интерфейсах, инфографике и даже в анимациях (SMIL, GSAP).
ICO
ICO (Icon) – формат для иконок в Windows, может содержать несколько размеров в одном файле. Используется для иконок программ и «фавиконок» сайтов (значков страниц).
Формат ICO был введён Microsoft в 1990-х как стандарт хранения иконок для операционной системы Windows. ICO-файл — это контейнер, способный содержать несколько изображений в разных размерах (16×16, 32×32, 48×48, 256×256 пикселей) и глубинах цвета (от 1 бита до 32 бит с альфа-каналом). При отображении система выбирает наиболее подходящий вариант в зависимости от контекста: значок на панели задач, в проводнике или в заголовке окна. ICO поддерживает прозрачность (через альфа-канал или маску прозрачности), но не анимацию. Помимо программ, ICO используется как favicon.ico — иконка сайта, размещаемая в корне веб-проекта и отображаемая в закладках и вкладках браузера. Несмотря на возраст, формат остаётся обязательным для Windows-приложений и широко поддерживается всеми браузерами.
Visio
VSD, VSDX, VSS, VSTX (Visio) – форматы Microsoft Visio для диаграмм, схем, блок-схем, с поддержкой сложных векторных объектов, однако требуется Visio.
Файлы с расширениями .vsd (старый, бинарный), .vsdx (новый, ZIP-архив с XML), .vss (шаблоны), .vstx (шаблоны в новом формате) — это собственные форматы Microsoft Visio, программы для создания диаграмм, блок-схем, организационных структур, сетевых схем и технической документации. Visio хранит не только графические примитивы, но и семантическую информацию: соединители «умеют» прилипать к фигурам, фигуры содержат данные (например, «тип сервера», «пропускная способность»), а диаграмма может быть связана с внешними источниками (Excel, SharePoint, SQL). В .vsdx данные организованы в XML-файлы внутри ZIP-контейнера (document.xml, pages.xml, connections.xml), что позволяет программно читать и генерировать схемы. Visio-файлы используются в enterprise-средах для документирования ИТ-инфраструктуры, бизнес-процессов (BPMN), архитектуры (UML) и технических спецификаций. Для полной поддержки требуется Visio, хотя просмотр возможен через Visio Online или конвертацию в PDF/SVG.
DWG
DWG (Drawing) – собственный бинарный формат AutoCAD, основной для хранения чертежей, применимых в архитектуре, машиностроении, строительстве.
Формат DWG — это проприетарный бинарный формат, разработанный Autodesk и используемый по умолчанию в программе AutoCAD с 1982 года. DWG хранит точные геометрические данные: координаты точек, параметры дуг, сплайнов, размерные линии, текстовые аннотации, слои, стили линий и блоки (повторяющиеся элементы — например, окна в фасаде). DWG поддерживает трёхмерные тела (твердотельное моделирование), атрибуты объектов, внешние ссылки (XREF) и пространства листов/модели. Формат постоянно обновляется — каждая новая версия AutoCAD вводит несовместимые изменения, что создаёт фрагментацию (DWG 2000, DWG 2004, DWG 2018 и т.д.). Несмотря на это, DWG остаётся де-факто стандартом в архитектуре, строительстве, машиностроении и промышленном дизайне. Многие САПР (ZWCAD, BricsCAD, nanoCAD) умеют читать и записывать DWG, но полная совместимость гарантируется только в экосистеме Autodesk.
DXF
DXF (Drawing Exchange Format) – текстовый/бинарный формат для обмена данными между CAD-системами, для экспорта/импорта между разными САПР (системы автоматизированного проектирования).
Формат DXF был создан Autodesk в 1982 году как открытая альтернатива DWG — для обмена чертежами между AutoCAD и другими CAD-системами. DXF может быть текстовым (ASCII) или бинарным, но чаще используется ASCII-вариант, так как он человекочитаем и поддаётся ручной правке. Файл структурирован в секции: HEADER (настройки), CLASSES, TABLES (слои, стили), BLOCKS, ENTITIES (сами объекты — линии, окружности, текст), OBJECTS. Каждая сущность описывается именованными полями и числовыми значениями. DXF сохраняет геометрию и базовые атрибуты, но не передаёт сложные элементы: динамические блоки, 3D-тела, параметризацию, внешние ссылки. Тем не менее, именно DXF стал «языком межсистемного общения»: чертёж из КОМПАС-3D экспортируется в DXF → импортируется в SolidWorks → отправляется на станок с ЧПУ. Формат поддерживается всеми профессиональными САПР и даже некоторыми векторными редакторами (CorelDRAW, Inkscape — через плагины).
Географические форматы
GeoJSON
GeoJSON – JSON-формат для хранения географических данных (точки, линии, полигоны). Используется в веб-картах (OpenStreetMap, Leaflet).
Формат GeoJSON — это расширение JSON, стандартизированное IETF в 2016 году (RFC 7946), предназначенное для представления географических объектов в веб-приложениях. GeoJSON описывает три типа геометрии:
- Point — точка (координаты долготы и широты),
- LineString — ломаная линия (массив точек),
- Polygon — замкнутый контур (массив колец).
Каждый объект может содержать свойства — произвольные пары «ключ = значение» (название, тип, население). Несколько объектов объединяются в FeatureCollection. GeoJSON легко генерируется на стороне сервера (Python, Node.js), парсится в браузере без библиотек, и поддерживается всеми современными картографическими библиотеками: Leaflet, OpenLayers, Mapbox GL JS. Ограничения: не поддерживает топологию (общие границы), проекции (только WGS84), и объём ограничен несколькими мегабайтами (иначе браузер тормозит). Зато идеален для интерактивных карт: метки кафе, маршруты доставки, зоны покрытия.
GML
GML (Geography Markup Language) – XML-формат для географических данных, используется в ГИС (геоинформационных системах) вроде QGIS, ArcGIS.
Формат GML — это XML-стандарт, разработанный Open Geospatial Consortium (OGC) и принятый как ISO 19136. GML описывает не только геометрию (точки, линии, полигоны), но и топологию (связи между объектами), временные ряды, стили отображения и метаданные. Геометрия задаётся тегами <gml:Point>, <gml:LineString>, <gml:Polygon> с вложенными <gml:coordinates> или <gml:posList>. Объекты группируются в <gml:featureMember>, каждый со своими атрибутами. GML поддерживает пространственные операции (пересечение, буфер), проекции (через <gml:ProjectedCRS>), и вложенность («регион → город → улица»). Используется в государственных ГИС (Росреестр, Госкартография), сервисах OGC (WFS — Web Feature Service), и профессиональных системах: QGIS, ArcGIS, gvSIG. GML объёмнее GeoJSON, но мощнее и точнее — он стандарт для юридически значимых данных.
IDF
IDF (Intermediate Data Format) – формат обмена векторными данными, используется в географических системах (ГИС «ИнГео»), проектировании, CAD/CAM системах.
IDF описывает объекты как набор команд: POINT, LINE, ARC, TEXT, каждая со своими параметрами (координаты, радиус, угол, слой, стиль).
Файл состоит из заголовка (версия, единицы измерения), списка слоёв и тел объектов. IDF сохраняет топологию, атрибуты и стили, что позволяет передавать не просто «картинку», а семантическую модель местности. Применяется при передаче данных между проектными организациями, геодезистами и заказчиками — особенно в инфраструктурных проектах (дороги, ЛЭП, трубопроводы).
MIF/MID
MIF/MID (MapInfo Interchange Format) – используется в программе MapInfo для хранения векторных геоданных, MIF хранит геометрию (координаты объектов), MID хранит атрибутивную информацию (табличные данные).
Пара форматов .mif (MapInfo Interchange Format) и .mid используется программой MapInfo Professional (ныне часть Pitney Bowes) для экспорта/импорта векторных данных.
- MIF — текстовый файл, описывающий геометрию: тип объекта (
Point,Line,Region), координаты, цвет, стиль линии, заливки. - MID — параллельный текстовый файл, содержащий атрибуты в формате CSV: по одной строке на объект, колонки — поля базы данных.
Например, MIF описывает полигон участка, MID — его кадастровый номер, площадь, собственника. Такое разделение упрощает обработку: геометрию можно отрисовать, а таблицу — импортировать в Excel. MIF/MID до сих пор применяется в коммерческой и муниципальной ГИС-аналитике, особенно в Восточной Европе и Азии.
SHP
SHP (Shapefile) – стандартный формат ESRI (разработчик ArcGIS) для хранения векторных данных.
Формат Shapefile был разработан компанией ESRI в 1990-х и стал де-факто стандартом для хранения векторных геоданных. Shapefile — это не один файл, а набор из 3+ обязательных файлов с одинаковым именем и разными расширениями:
.shp— содержит геометрию объектов (точки, линии, полигоны),.shx— индексный файл, ускоряющий доступ к геометрии,.dbf— таблица атрибутов в формате dBASE (старый стандарт баз данных),.prj— текстовый файл с описанием системы координат (например,WGS84илиPulkovo 1942 / Gauss-Kruger zone 5),.cpg— указывает кодировку атрибутов (например,UTF-8,CP1251).
Дополнительно могут быть.sbn/.sbx(пространственный индекс),.xml(метаданные),.qix(индекс QGIS). Shapefile не поддерживает топологию, время, 3D-Z, и имеет ограничение: имя поля — до 10 символов, длина строки — до 254 байт. Но благодаря простоте, стабильности и поддержке во всех ГИС (QGIS, ArcGIS, gvSIG, GRASS) он остаётся самым распространённым форматом для обмена: скачал архив с 5 файлами — открыл в любой программе.
GeoPackage
Формат GeoPackage — это современный стандарт OGC (с 2014 года), созданный как замена Shapefile. GeoPackage — это единый файл с расширением .gpkg, основанный на SQLite — лёгкой встраиваемой СУБД. Внутри хранятся:
- векторные слои (в таблицах с геометрией в формате WKB),
- растровые тайлы (для ортофотопланов),
- стили отображения,
- метаданные,
- расширения (сети, 3D-модели).
Преимущества: один файл вместо пяти, поддержка Unicode, большие объёмы (до терабайтов), пространственные индексы (R-tree), транзакции, шифрование. GeoPackage используется в мобильных ГИС (OruxMaps, QField), военных и экологических проектах, а также как формат для офлайн-карт в приложениях. ESRI, QGIS, GDAL полностью поддерживают GPKG — он будущее векторных геоданных.
KML/KMZ
KML/KMZ (Keyhole Markup Language) – формат для Google Earth с XML-структурой и поддержкой 3D-объектов.
Формат KML — это XML-стандарт, изначально разработанный компанией Keyhole (позже купленной Google) для программы Earth Viewer, ставшей Google Earth. KML описывает географические объекты: точки с иконками, линии маршрутов, 3D-модели зданий, наложенные изображения («земляные слои»), и даже временные анимации (<gx:Tour>). Объекты группируются в <Placemark>, <Folder>, <Document>. KML поддерживает стили (<Style>), всплывающие описания (<description> с HTML), и взаимодействие с пользователем.
KMZ — это сжатый KML: ZIP-архив, содержащий .kml и вложенные ресурсы (иконки, текстуры, модели COLLADA). KMZ позволяет упаковать целый проект в один файл. KML/KMZ остаются стандартом для визуализации данных в Google Earth, а также используются в GPS-навигаторах, дрон-софте и образовательных проектах («виртуальные экскурсии»).