СТРУКТУРА МЕТАФАЙЛА
1. Введение
В ЯГС включены функции записи и считывания графической информации с внешнего файла, который называется графическим метафайлом или метафайлом. Метафайл может быть использован для различных целей:
передачи графической информации между системами;
передачи графической информации из одного места в другое;
передачи графической информации от одной прикладной задачи, использующей ЯГС, к другой;
хранения сопровождающей неграфической информации.
Механизм кодирования, используемый для записи в метафайл, может зависеть от реализации или от операционной среды, например:
кодирование в соответствии со СТ СЭВ 359-76 для передачи по сетям;
двоичное кодирование для экономии памяти ЭВМ во время счета;
текстовое кодирование, обеспечивающее возможность передачи между ЭВМ различной архитектурой и простоту редактирования.
Спецификация формата и содержания записей метафайла не является составной частью стандарта ЯГС. Определяется только интерфейс с метафайлом. Реализация ЯГС может поддерживать любое количество типов станции класса МВВОД и МВЫВОД. Пользователь может выбрать наиболее подходящую из них в зависимости от прикладной области и среды.
Для метафайла ЯГС определяются два вида кодирования:
текстовое кодирование;
двоичное кодирование.
2. Формат файла и формат данных
Метафайл ЯГС создается как последовательность логических записей данных. Файл начинается с записи, имеющей фиксированный формат - ЗАГОЛОВОК ФАЙЛА, которая определяет начало метафайла (автора, устройство, формат следующих записей и представление чисел). Файл заканчивается записью КОНЕЦ. Между этими двумя записями записывается следующая информация:
записи управления станцией и записи сообщения;
записи примитивов вывода, описывающие элементарные графические объекты;
информация об атрибутах, включающая атрибуты примитивов вывода, атрибуты сегментов и атрибуты станций;
записи сегмента, описывающие структуру и преобразования сегмента;
записи пользователя.
Общая структура метафайла ЯГС имеет следующий вид:
Все записи данных, за исключением заголовка файла, имеют заголовок записи, содержащий: