Товары в корзине: 0 шт Оформить заказ
Стр. 1
 

297 страниц

1399.00 ₽

Купить официальный бумажный документ с голограммой и синими печатями. подробнее

Официально распространяем нормативную документацию с 1999 года. Пробиваем чеки, платим налоги, принимаем к оплате все законные формы платежей без дополнительных процентов. Наши клиенты защищены Законом. ООО "ЦНТИ Нормоконтроль".

Наши цены ниже, чем в других местах, потому что мы работаем напрямую с поставщиками документов.

Способы доставки

  • Срочная курьерская доставка (1-3 дня)
  • Курьерская доставка (7 дней)
  • Самовывоз из московского офиса
  • Почта РФ

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

Оглавление

1. Сфера действия и область применения

2. Ядро графической системы

2.1. Состав стандарта

2.2. Введение в ЯГС

2.3. Концепции

2.4. Графический вывод

2.4.1. Примитивы вывода

2.4.2. Атрибуты графических примитивов вывода

2.4.3. Атрибуты примитива Ломаная

2.4.4. Атрибуты примитива Полимаркер

2.4.5. Атрибуты примитива Текст

2.4.6. Атрибуты примитива Полигональная область

2.4.7. Атрибуты примитива Матрица ячеек

2.4.8. Атрибуты примитива Обобщенный примитив вывода

2.4.9. Цвет

2.5. Станции

2.5.1. Характеристики станции

2.5.2. Выбор станции

2.5.3. Задержка изменений изображения

2.5.4. Очистка носителя изображения

2.5.5. Удаление примитивов, находящихся вне сегментов

2 5.6. Передача сообщений на станцию

2.6. Системы координат и преобразования

2.6.1. Преобразования нормирования

2.6.2. Отсечение

2.6.3. Преобразование станции

2.6.4. Преобразование входных данных устройства ввода позиции

2.6.5. Преобразование входных данных устройства ввода последовательности позиций

2.7. Сегменты

2.7.1. Понятие о сегментах

2.7.2. Атрибуты сегментов

2.7.3. Преобразования сегмента

2.7.4. Отсечение и память сегментов станции

2.7.5. Общая память сегментов

2.7.6. Функции ОПС и отсечение

2.8. Ввод графических данных

2.8.1. Логические устройства ввода

2.8.2. Модель логического устройства ввода

2.8.3. Режимы работы логических устройств ввода

2.8.4. Измерение каждого класса устройств ввода

2.8.5. Очередь событий и текущий отчет о событии

2.8.6. Инициализация устройств ввода

2.9 Интерфейс ЯГС с метафайлом

2.10. Уровни ЯГС

2.10.1. Введение в уровни

2.10.2. Структура уровней

2.10.3. Уровни функциональности

2.11. Состояние ЯГС и справочные функции

2.11.1. Описание состояний

2.11.2. Справочные функции

2.12. Обработка ошибок

2.13. Специальный интерфейс между ЯГС и прикладной программой

3. Функции ЯГС

3.1. Правила описания функций

3.2. Функции управления

3.3. Функция вывода графических данных

3.4. Функции задания атрибутов выходных данных

3.5. Функции преобразований

3.6. Функции сегментации

3.7. Функции ввода

3.8. Функции метафайла

3.9. Справочные функции

3.10. Вспомогательные функции

3.11. Функции обработки ошибок

4. Структуры данных ЯГС

4.1. Обозначения и типы данных

4.2. Функциональное состояние

4.3. Таблица описания ЯГС

4.5. Таблица состояния станции

4.6. Таблица описания станции

4.7. Таблица состояния сегмента

4.8. Таблица ошибочных состояний ЯГС

Приложение 1 Термины, применяемые в настоящем стандарте, и их пояснения

Приложение 2 Некоторые аспекты проектирования ЯГС

Приложение 3 Списки функций

Приложение 4 Список ошибок

Приложение 5 Интерфейсы

Приложение 6 Допустимые различия в реализациях ЯГС

Приложение 7 Структура метафайла

Приложение 8 Примеры программ

Приложение 9 Краткое описание функций ЯГС

Показать даты введения Admin

Страница 1

I n/f-kb

государственный стандарт СОЮЗА ССР

СИСТЕМЫ ОБРАБОТКИ ИНФОРМАЦИИ

МАШИННАЯ ГРАФИКА

ФУНКЦИОНАЛЬНОЕ ОПИСАНИЕ ЯДРА ГРАФИЧЕСКОЙ СИСТЕМЫ

ГОСТ 27817-88 (СТ СЭВ 6177—88)

Издание официальное

bJ X—N8/060

ГОСУДАРСТВЕННЫЙ КОМИТЕТ СССР ПО СТАНДАРТАМ Москва


Страница 2

ГОСУДАРСТВЕННЫЙ СТАНДАРТ СОЮЗА ССР

СИСТЕМЫ ОБРАБОТКИ ИНФОРМАЦИИ

МАШИННАЯ ГРАФИКА

ФУНКЦИОНАЛЬНОЕ ОПИСАНИЕ ЯДРА ГРАФИЧЕСКОЙ СИСТЕМЫ

ГОСТ 27817-88 (СТ СЗВ 6177—88)

Издание официальное

МОСКВА —1989

Страница 3

Прежде яеи полыомтк» ГОСТ 27817-58, «несите следуют** исправления:

В кдяоы мссте

Должно

Стр. 43. Черт. 10

Преобразование

нормирования

Преобразовано нор-МИрООЙКИЯ 0

Стр 76. 77.

. Пу нкты 3.2.4 и 12.6

Параметры:

Параметры:

Вх идентификатор стэнинн

ГОСТ 27817-88. М.: Издяо ствидврт**, 1989

© Издательство стандартов. 1989

Страница 4

УДК S33.3.005.4:006.354    Трупа*    П«

ГОСУДАРСТВЕННЫЙ СТАНДАРТ СОЮЗА ССР

Системы обработки информации

МАШИННАЯ ГРАФИКА    ГОСТ

Функциональное описание «д?а    27817—88

графической системы

Information processing; systems.    оо»

Computer graphics.    6177—88)

Functional description of gTaphicai kernel »уз‘.ег!

ОКСТУ 0014

Дата а «едения 0I.07.S9

Настоящий стандарт распространяется на программные н технические средства машинной графики, реализующие и использующие ядро графической системы (ЯГС), и устанавливает общие положения, концепции ядра графической системы, структуру данных и функции ядра графической системы, используемые в системах автоматизированного проектирования (САПР), в автоматизированных системах управления (АСУ) и других областях, где применяются средства машинной графики.

Настоящий стандарт соответствует ИСО 7942, за исключением:

раздел 0 ИСО 7942 включен в стандарт как приложение 2; раздел 2 ИСО 7942 включен в стандарт как приложение 1; опущен раздел 4.12 ИСО 7942 н все примечания относительно «International Register of Graphikal Items ISO*:

дополнительно к ИСО 7942 введен минимальный уровень реализации ЯГС — уровень М (в соответствии с документом ANSI ХЗ.124.1—1985).

1. СФЕРА ДЕЙСТВИЯ И ОБЛАСТЬ ПРИМЕНЕНИЯ

'.Л. Устанавливаемый настоящим стандартом набор функций ЯГС предназначен для использования в прикладных задачах, которые вырабатывают спроектированные с помощью ЭВМ двухмерные изображения для векторных и растровых графических устройств вывода.

1.2. ЯГС должно обеспечивать ввод данных и взаимодействие с оператором графических устройств при помощи графической информации и сегментации изображений и обеспечивать их запоминание и изменение.

Икание официальное

Перепечатка воспрещена

Страница 5

С. 2 ГОСТ 27817—S8 (СТ СЭВ 6177-88)

1.3.    ЯГС представляет собой набор функций, которые могут быть реализованы программно или аппаратно, и служит для обеспечения связи между прикладной программой и графическими устройствами ввода и вывода.

1.4.    Одним из основных понятий ЯГС является понятие графической рабочей станции (далее — станция), состоящей из набора устройств ввода и одного устройства вывода. Несколько станций могут использоваться параллельно.

1.5.    В ЯГС включены функции записи информации во внешний файл и чтения из него.

1.6.    Функции ЯГС объединены в двенадцать совместимых между собой уровней от минимального уровня до уровня, обеспечивающего все возможности ЯГС. Описание уровней приведено в подразд. 2.10. В реализацию ЯГС должны входить функции только одного уровня. Реализацию следует считать неправильной, если она находится между двумя определенными уровнями или вне уровней. В реализациях доступ ко всем возможностям графических станций, который может быть осуществлен посредством функций ЯГС, должен осуществляться только через ЯГС.

1.7.    ЯГС не зависит от особенностей языков программирования. Для связи с языками программирования необходимо описать имена функций и типы данных в терминах конкретного языка прог* раммнрования.

1.8.    Реализация ЯГС дает возможность пользователям машин* ной графики разрабатывать прикладные программы, которые будут переноситься между различными вычислительными системами и различными графическими устройствами.

1.9.    Понятия и пояснения, применяемые в настоящем стандарте, приведены в приложении 1.

2. ЯДРО графической системы

2.1.Состав    стандарта

2.1.1.    Стандарт содержит 4 раздела и 9 приложений.

2.2. Введение в ЯГС

2.2.1.    Ядро графической системы представляет собой функциональный интерфейс между прикладной программой и конфигурацией графических устройств ввода и вывода. Функциональный интерфейс содержит все основные функции для интерактивной и неинтерактивной графики и применим для широкого диапазонз графического оборудования.

2.2.2.    Этот интерфейс составлен таким образом, что позволяет прикладной программе не учитывать особенности аппаратуры. В результате получается интерфейс, представляющий единообразные для всех устройств примитивы вывода: ЛОМАНАЯ, ПОЛИМАРКЕР, ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ, МАТРИЦА ЯЧЕЕК,

- **4,

I

Страница 6

ГОСТ 27817-88 (СТ СЭВ 6177-8* • ". 3

ОБОБЩЕННЫЙ ПРИМИТИВ ВЫВОДА, и единообразные к.^с-сы устройств ввода: ВВОД ПОЗИЦИИ, ВВОД ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ, ВВОД ЧИСЛА, ВЫБОР, УКАЗАНИЕ, ВВОД СТРОКИ.

2.2.3.    В подразд. 2.3 рассматриваются основные концепции взо-да и вывода. Вводится основное понятие Я ГС, реализующее независимость от устройств, — графическая станция.

2.2.4.    Средства манипуляции и изменения изображений вводятся посредством сегментации, динамических атрибутов и преобразований. Общее описание этих методов приведено в п. 2.5.3 с учетом принятой концепции станции.

2.2.5.    Совокупность станций позволяет осуществлять одновременный обмен данными с различными устройствами отображения. ЯГС предоставляет с помощью специальных станций средства для хранения графических данных как вне, так и внутри ядра. В последнем случае эта специальная станция дает возможность передавать графические данные непосредственно из нее на другие станции.

2.2.6.    Полный набор функций поддерживается не каждой реализацией ЯГС. Каждая реализация ЯГС включает функции одного уровня. Уровни совместимы снизу вверх.

2.2.7.    ЯГС определяет только независимое от языков программирования ядро графической системы. Для объединения с языком программирования ЯГС следует встроить в зависимый от языка слой, содержащий языковые соглашения, например, параметры и имена.

2.2.8.    Модель функционирования ЯГС в графической системе представлена на черт. 1. Каждый уровень программ может вызывать функции примыкающих нижних уровней. В основном прикладная программа будет использовать проблемно-ориентированный и языково-зависимый уровни, а также другие зависящие от применения уровни и ресурсы операционной системы. Все возможности станции, к которым можно обращаться через ЯГС, следует использовать только через ЯГС. Связь с языками программирования описана в приложении 5.

2.3. Концепции

2.3.1. Графический вывод, генерируемый ЯГС, строится на >с-нове двух групп элементов — примитивов вывода и атрибутов примитивов. Примитивы вывода являются абстракцией основных действий, которые может выполнять устройство, например рисование линий и отображение строк литер.

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

Страница 7

С 4 ГОСТ 27817-88 (СТ СЭ8 6177-88)

Мсмип* функционировании ЬГС • греческой систем*

1

П г-* к."«дни* PoorpjwwvJ

ЯгоЗксичсосжеитировмнь* программы |

Р;:урхм>| свй*и с яаыкгми программирования

1 Ядро графической системы

ОПЕРАЦИОННАЯ СИСТЕМА

Дзу: лс ресурс .i I Грвфмчккие ресурс*

Черт. 1

2.3.2.    Графическая информация, вводимая от устройств, как результат действий оператора, преобразуется Я ГС в шесть классов ввода. Каждый класс ввода характеризуется типом вводимых, данных. Представленное таким образом устройство называется логическим устройством ввода. Эффект действий по вводу отображается на носитель изображения в виде подсказки и эха индивидуально для каждого логического устройства ввода.

2.3.3.    Две абстрактные концепции (абстрактный вывод и абстрактный ввод) являются основополагающими для определения так называемой абстрактной станции. Станция Я ГС содержит один (либо ни одного) носитель изображения и, возможно, несколько устройств ввода, таких, как, например, алфавитно-цифровая клавиатура, планшет и световое перо. Станция представляет эти устройства прикладной программе как конфигурацию абстрактных устройств, скрывая тем самым особенности аппаратуры.

2.3.4.    Геометрическая информация (координаты), содержащаяся в примитивах вывода, атрибутах и значениях данных логического ввода (при вводе позиции или последовательности позиций) подвергается преобразованиям. Эти преобразования связывают следующие, принятые в ЯГС. системы координат:

1)    мировые координаты (МК), используемые прикладным программистом;

2)    нормированные координаты (НК), используемые для задания единой для всех станций системы координат;

3)    координаты устройства (КУ): одна система координат на каждую станцию, в этой системе представляются координаты пространстна изображения станции.

2.3.5.    Примитивы вывода и атрибуты преобразуются из МК в НК посредством преобразования нормирования, из НК — в НК посредством преобразований сегмента и из ПК в КУ посредством

Страница 8

ГОСТ 27817-М (СГ СЭВ 6177-«8) С. f)

преобразований станции. Входные данные устройства ввода позиции преобразуются из КУ в НК посредством преобразования, обратного преобразованию станции, н посредством одного из преобразований, обратных к преобразованию нормирования из НК в МК.

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

2.3.7.    Атрибуты, управляющие внешним видом компонентов изображения (примитивов вывода, сегментов, подсказок и эха устройств ввода) на носители изображения, организованы следующим образом. Две группы атрибутов влияют на внешний вид каждого примитива вывода: атрибуты примитивов, которые не зависят от станции, и атрибуты станции. Атрибуты примитивов задаются по мерс необходимости и связываются с примитивом во время его создания. Атрибуты примитива определяют его геометрические характеристики, такие как, например, высота литеры для примитива ТЕКСТ и размер шаблона для примитива ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ. Негеометрическнмн характеристиками примитивов атрибуты управляют одним из двух способов; либо все негеометрическне характеристики примитива задаются одним атрибутом-индексом, указывающим на зависящее от станции представление (набор значений), либо каждая негеометрическая характеристика примитива задается отдельным, не зависящим от станции, атрибутом. Первый способ — задание связками, второй — индивидуальное задание.

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

2.3.9.    Визуальное представление сегментов определяется атрибутами сегментов, включающими преобразование сегмента, видимость, выделение и чувствительность к указанию. Их также можно изменять динамически. Атрибуты сегмента могут слу-

Страница 9

С о ГОСТ 27817-88 (СТ СЭВ 6177-88)

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

2.3.10.    Атрибуты, управляющие работой логических устройств ввода, задаются либо во время инициализации, либо при подготовка устройств ввода. При инициализации могут быть определены начальные значения, тип подсказки и эха и область на экране, где они будут появляться. С помощью записи данных при инициализации можно задавать специфичные для данного устройства до-полнительные атрибуты. Во время подготовки устройства ввода может быть выбран режим работы и включено или выключено эхо. Режимы работы логических устройств ввода определяют, кто (оператор или прикладная программа) имеет инициативу: данные ввода в режиме ОПРОС получаются непосредственно прикладной программой, данные ввода в режиме ЗАПРОС задаются оператором непосредственно в ответ на запрос прикладной программы, в режиме СОБЫТИИ генерируются оператором асинхронно и накапливаются в очереди, доступной для обработки прикладной программой.

2.3.11.    По время работы ЯГС может находиться в пяти функциональных состояниях. Каждому состоянию соответствует набор функций, допустимых в этом состоянии, и набор переменных состояния. Концепция функционального состояния и переменные состояния позволяют четко определить параметры инициализации (например при обращении к функции ОТКРЫТЬ СТАНЦИЮ) и правильно интерпретировать действия различных функций, осо-6<лжо для обеспечения независимости от устройств. Существует особый набор функций, называемых справочными функциями, который допускается во всех состояниях. Эти функции могут обращаться к таблицам состояния в режиме чтения. Ряд справочных функций имеет доступ в режиме чтения к описаниям станций, что дает возможность прикладной программе адаптироваться к конкретным возможностям станции. Справочные функции никогда не вызывают ошибок. Наоборот, полученная от них информация позволяет определить, правильно ли был сделан запрос.

2.3.12.    В ЯГС предусмотрено запоминание графической информации с целью се долговременного хранения н обмена между системами. Станция вывода в метафайл ЯГС выполняет запись графической информации в так называемый метафайл, станция ввода из метафайла ЯГС считывает данные из метафайла. Кроме обычных функций вывода ЯГС, станция вывода в метафайл может принимать записи, содержащие неграфическую информацию. Ввод из метафайла осуществляется при помощи операций чтения и интерпретации, которые приводят к тем же результатам, как и при обращении к соответствующим функциям непосредственно из прикладной программы.

Страница 10

ГОСТ 27817-88 (СТ СЭВ 6177-88) С 7

2.4.    Г р а ф н ч е с к и б вывод

2.4.1.    Примитивы вывода

2.4.!.1.    Графическая информация, которая генерируется ЯГС и направляется на все активные станции, строится из основных элементов, называемых графическими примитивами вывода. В ЯГС имеется шесть видов примитивов вывода:

ЛОМАНАЯ — набор связанных между собой отрезков прямых линий, определяемых последовательностью точек;

ПОЛИМАРКЕР — графические символы одного типа, центрированные в заданных позициях;

ТЕКСТ — строка литер в заданной позиции;

ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ — многоугольник, который может быть либо пуст, либо закрашен одним цветом, либо заполнен узором, либо заштрихован;

МАТРИЦА ЯЧЕЕК — матрица ячеек, каждая из которых име-, ет свой индивидуальный цвет;

ОБОБЩЕННЫЙ ПРИМИТИВ ВЫВОДА (ОПВ) — ЯГС обращается к специальным дополнительным возможностям геометрического вывода станции. Таким как, например, вычерчивание онлайновых кривых, дуг окружностей и эллипсов. Объекты вывода характеризуются идентификатором, набором точек и дополнительными данными. ЯГС применяет все преобразования к точкам, но оставляет их интерпретацию за станцией.

2.4.2.    Атрибуты графических примитивов вывода

2.4.2.1.    Каждый примитив вывода имеет три типа атрибутов: геометрический, негеометрнческнй н идентификационный. Первые два типа атрибутов определяют точное представление примитива вывода, а третий тип атрибутов используется совместно с вводом. Значения атрибутов устанавливаются по мере необходимости и заносятся в таблицу состояния ЯГС. Предоставляются отдельные функции ЯГС для установки отдельно каждого из ат* рибутов примитива (за исключением флагов выборки атрибутов (ФВА), которые описаны ниже), что позволяет прикладной программе задавать значения атрибута, не обязательно задавая значения других атрибутов. Во время создания примитива вывода (а именно, когда вызывается одна из функций ЯГС для генерации примитива вывода) значения атрибутов связываются с примитивом и не могут впоследствии быть изменены.

2.4.2.2.    Атрибуты первого типа управляют геометрическими характеристиками примитивов, которые влияют на форму и размер всего примитива (например ВЫСОТА ЛИТЕРЫ для примитивов ТЕКСТ). Атрибуты этого типа не зависят от станции. Они, представляют координатные данные (точки или смещения) и задаются в мировых координатах, либо принимают одно из перечисленных значений. Геометрические атрибуты задаются отдельно для каждого из видев примитивов. Примитивы могут иметь одни

Страница 11

С 8 ГОСТ 27817-88 (СТ СЭВ в|77-83)

пли несколько геометрических атрибутов или не иметь ни одного атрибута такого типа.

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

2.4.2.3. Атрибуты второго тина управляют негеометрическими характеристиками примитивов, которые влияют на визуальное представление примитива (например тип линии для примитива ЛОМАНАЯ или индекс цвета для всех примитивов, за исключением примитива МАТРИЦА ЯЧЕЕК). Негеометрическне характеристики не представляют координатных данных.

Негеометрическне характеристики примитива могут задаваться одним из двух способов: через связку или индивидуально.

2 4 2.4. Для каждого примитива существует атрибут— ИНДЕКС <Тфнмитива>, который является указателем в таблице связок примитива. Для каждого примитива, за исключением ОБОБЩЕННОГО ПРИМИТИВА ВЫВОДА и примитива МАТРИЦА ЯЧЕЕК, имеется таблица связок. Негеометрическне характеристики при задании через связку являются зависимыми от станции. Каждая станция имеет свой набор таблиц связок, находящихся в таблице состояния станции. Данные в конкретной связке или запись в таблице связок могут быть различными для разных станций.

2.4 2.5. При индивидуальном задании характеристик существует отдельный атрибут для каждой негеометрнческой характеристики. Как и атрибуты, управляющие геометрическими характеристиками, эти атрибуты являются независимыми от станции и точно 7акже запоминаются в таблице состояния ЯГС. Поскольку каждая негеометрнческая характеристика встречается только в одном типе связки примитива, каждый из этих атрибугов применяется только к одному виду примитива.

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

Страница 12

ГОСТ 278I7-S8 (СТ СЭВ 6177- «8) С 9

2А.2.7. Примитивы ОБОБЩЕННЫЙ ПРИМИТИВ ВЫВОДА (ОПВ) и МАТРИЦА ЯЧЕЕК не имеют ассоциированных таблиц связок и соответствующих индивидуально задаваемых атрибутов. Если примитив ОБОБЩЕННЫЙ ПРИМИТВ ВЫВОДА (ОПВ) подобен примитиву ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ, то следует использовать таблицу связок полигональной области или набор ее индивидуально задаваемых атрибутов. Примитив МАТРИЦА ЯЧЕЕК содержит информацию об индексе цвета как часть своего задания и не имеет других, ««геометрических характеристик, поэтому нет необходимости н использовании ни таблицы связок, ни набора индивидуально задаваемых атрибутов.

2.4.2.8.    Способ задания негеометрическнх атрибутов примитива может быть выбран отдельно для каждого атрибута. Группа атрибутов, называемая ФЛАГАМИ ВЫБОРКИ АТРИБУТОВ (ФВА), которые принимают значения ИНДИВИДУАЛЬНЫЙ или СВЯЗАННЫЙ, позволяет выбрать тот или иной способ задания. Эти атрибуты запоминаются в таблице состояния ЯГС. Для каждой иегеометрической характеристики каждого примитива имеется свой ФВА. Начальные значения всех ФВА одинаковы: они могут иметь значения или ИНДИВИДУАЛЬНЫЙ, или СВЯЗАННЫЙ в зависимости от реализации. Если начальные значения не изменяются, система будет работать в режимах:

индивидуальное задание негеометрических атрибутов не поддерживается системой, если все ФВА имеют значения СВЯЗАННЫЙ;

задание негеометрических характеристик посредством связок не поддерживается системой, если начальными значениями всех ФВА являются - ИНДИВИДУАЛЬНЫЙ.

Флаги могут быть установлены в любой момент после открытия ЯГС с помощью функции ЗАДАТЬ ФЛАГИ ВЫБОРКИ АТРИБУТОВ. Это позволяет одни негеометрические атрибуты примитива задавать индивидуально, а другие — через связки.

2.4.2.9.    При отображении примитива значения негеометрическнх характеристик определяются следующим образом:

если ФВА имеет значение ИНДИВИДУАЛЬНЫЙ, то на всех станциях используется значение соответствующего индивидуально заданного атрибута;

если ФВА имеет значение СВЯЗАННЫЙ, то используется значение соответствующей компоненты связки, указанной индексом в таблице связок этого примитива на этой станции.

2.4.2.10.    Цвет является негеометрическим атрибутом примитива, он задается индексом в таблице цвета. На каждой станции имеется таблица, в которой указаны все индексы цвета. Другие поля в связках или соответствующие им индивидуально .«адавае-мые атрибуты могут быть индексами либо другой таблицы станции (например, индекс заполнителя, когда используется вид за-

Страница 13

С 50 ГОСТ 27817-88 (СТ СЭВ 6177-88)

гол нения ПО ШАБЛОНУ), либо индексами некоторого фнксиро-ванного списка (например тип линии для примитива ЛОМАНАЯ).

2.4.2.11.    Для каждого примитива существует только один атрибут третьего типа — ИДЕНТИФИКАТОР УКАЗАНИЯ. Он используется для идентификации примитива или группы примитивов н сегменте при указании на этот сегмент.

2.4.2.12.    Таким образом к каждому примитиву вывода применяются три типа атрибутов (атрибуты, управляющие негеометрн-• некими характеристиками, геометрические атрибуты и ИДЕНТИФИКАТОР УКАЗАНИЯ).

ЛОМАНАЯ:    ИНДЕКС    ЛОМАНОЙ;

ТИП ЛИНИИ;

МАСШТАБ ТОЛЩИНЫ ЛИНИИ;

ИНДЕКС ЦВЕТА ЛОМАНОЙ;

ФВА ТИПА ЛИНИИ;

ФВА МАСШТАБА ТОЛЩИНЫ ЛИНИИ; ФВА ИНДЕКСА ЦВЕТА ЛОМАНОЙ; ИДЕНТИФИКАТОР УКАЗАНИЯ. ПОЛИМАРКЕР:    ИНДЕКС    ПОЛИМАРКЕРА;

ТИП МАРКЕРА;

МАСШТАБ МАРКЕРА;

ИНДЕКС ЦВЕТА ПОЛИМАРКЕРА;

ФВА ТИПА МАРКЕРА;

ФВА МАСШТАБА МАРКЕРА;

ФВА ИНДЕКСА ЦВЕТА ПОЛИМАРКЕРА; ИДЕНТИФИКАТОР УКАЗАНИЯ.

ТЕКСТ:    ИНДЕКС    ЦВЕТА;

ШРИФТ И ТОЧНОСТЬ ТЕКСТА;

МАСШТАБ РАСШИРЕНИЯ ЛИТЕРЫ; МЕЖЛИТЕРНЫЙ ПРОСВЕТ;

ИНДЕКС ЦВЕТА ТЕКСТА;

ФВА ШРИФТА И ТОЧНОСТИ ТЕКСТА;

ФВА МАСШТАБА РАСШИРЕНИЯ ЛИТЕРЫ;

ФВА ИНДЕКСА ЦВЕТА ТЕКСТА;

ВЫСОТА ЛИТЕРЫ;

ВЕРТИКАЛЬ ЛИТЕРЫ;

НАПРАВЛЕНИЕ ТЕКСТА; ВЫРАВНИВАНИЕ ТЕКСТА; ИДЕНТИФИКАТОР УКАЗАНИЯ.

Страница 14

ГОСТ 27817-88 (СТ СЭВ 6177—88) С. П

ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ:

МАТРИЦА

ЯЧЕЕК:

ОБОБЩЕННЫЙ

ПРИМИТИВ

ВЫВОДА:

ИНДЕКС ПОЛИГОНАЛЬНОЙ ОБЛАСТИ; ВИД ЗАПОЛНЕНИЯ ПОЛИГОНАЛЬНОЙ

ОБЛАСТИ;

ИНДЕКС ЗАПОЛНИТЕЛЯ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ;

ИНДЕКС ЦВЕТА ПОЛИГОНАЛЬНОЙ ОБЛАСТИ;

ФВА ВИДА ЗАПОЛНЕНИЯ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ;

ФВА ИНДЕКСА ЗАПОЛНИТЕЛЯ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ;

ФВА ИНДЕКСА ЦВЕТА ПОЛИГОНАЛЬНОЙ ОБЛАСТИ;

РАЗМЕР ШАБЛОНА;

ТОЧКА ПРИВЯЗКИ ШАБЛОНА; ИДЕНТИФИКАТОР УКАЗАНИЯ.

ИДЕНТИФИКАТОР УКАЗАНИЯ.

Содержит или не содержит ни одного из приведенных выше наборов. Наличие атрибута ИДЕНТИФИКАТОР УКАЗАНИЯ обязатсль-


Взаимосвязи атрибутов приведены на черт. 2.

Атрибуты примитивов, кроме ИДЕНТИФИКАТОРА УКАЗАНИЯ, описаны в п одр аз д. 2.4. В описании атрибуты печатаются прописными буквами (например, ВЫСОТА ЛИТЕРЫ, ИДЕНТИФИКАТОР УКАЗАНИЯ), характеристики печатаются как прописными, так и строчными буквами по контексту. Геометрические характеристики всегда регулируются геометрическими атрибутами и печатаются прописными буквами (например, ВЫСОТА ЛИТЕРЫ).

Негеометрнческие характеристики могут регулироваться через ИНДЕКС примитива или посредством индивидуально определенных атрибутов. Негеометрические характеристики печатаются строчными буквами, если не используются соответствующие индивидуально определенные атрибуты, в противном случае

Страница 15

С. 12 ГОСТ 27817—S8 (СТ СЭВ 6I7T—Ь8)

Связь ятрвСуто*

Черт. 2

Страница 16

ГОСТ 27817-83 (СТ СЭВ 6177-&8) С 13

они печатаются прописными буквами (например характеристика, тип линии и индивидуально определенный атрибут ТИП ЛИНИИ).

2.4.2.13. Поля в таблицах связок, шаблонов н цвета могут быть установлены отдельно для каждой станции. Некоторые стандартные предопределенные значения для полей таблицы содержатся п таблице описания станции и используются как начальные значения. Прикладная программа может выбрать стандартное значение или задать значение характеристики определенного поля явно. Для каждой станции вывода или ввода-вывода следует заранее определять ляшь наиболее часто используемые (или предполагаемые для использования) комбинации значений характеристик. Другие комбинации значении могут быть заданы функцией ЗАДАТЬ ПРЕДСТАВЛЕНИЕ <примитива (шаблона(цвета > (возможно после выяснения возможностей станции).

На каждой станции категории ВЫВОД. ВВОД-ВЫВОД или МВЫВОД (вывод в метафайл) имеются таблицы связок ломаной, связок полимаркера, связок текста, связок полигональной области, шаблонов, цвета. Они являются атрибутами станции.

Значения данных в этих таблицах могут быть динамически изменены. Изменение таблицы связок является единственным способом изменения изображения ранее выведенного примитива.

Изменение в полях таблицы связок может отражаться на изображении примитива только в случае, если соответствующие ФВА (этого примитива) для характеристик из таблицы связок имеют значения СВЯЗАННЫЙ. Поле «восприятие динамического обновления» в таблице описания станции указывает, какие изменения приводят к неявной повторной генерации (НПГ) (возможно задержанной), а какие изменения могут быть выполнены немедленно (НОИ — немедленное обновление изображения).

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

2.4.3. Атрибуты примитива ЛОМАНАЯ

2.4.3.1.    Ломаная не имеет геометрических атрибутов. Представлением ломаной на станции управляет ИНДЕКС ЛОМАНОЙ или набор индивидуально заданных атрибутов ломаной (ТИП ЛИНИИ, МАСШТАБ ТОЛЩИНЫ ЛИНИИ и ИНДЕКС ЦВЕТА ЛОМАНОЙ) или некоторая комбинация этих двух способов, в зависимости от значений ФВА для типа линии, масштаба толщины линии или индекса цвета ломаной. Атрибут ИНДЕКС ЛОМАНОЙ является указателем в таблице связок ломаной, каждое поле которой содержит значения для типа линии, масштаба толщины линии и индекса цвета ломаной.

2.4.3.2.    Типы линий с 1 до 4 задают сплошную, штриховую, пунктирную и штрнхпунктирную линии соответственно. Эти типы линий различают и реализуют все станции вывода и ввода-выво-

Страница 17

С. 14 ГОСТ 27817-88 (СТ СЭВ 6177-88)

да. Значения типов линии больше 4 резервируют для будутс* стандартизации. Типы линии с отрицательными значениями зависят от реализации. Тип линии определяет последовательность отрезков линии и промежутков между ними, которые повторяются при изображении ломаной. Будет ли эта последовательность начинаться заново или продолжаться при начале ломаной, при начале вычерчивания усеченной части ломаной, в каждой вершине ломаной, зависит от станции.

2.4.3.3. Толщина линии вычисляется как номинальная толщина» умноженная на масштаб толщины линии. Это значение преобразуется станцией в ближайшую по назначению доступную толщину линии.

2.4.4.    Атрибуты примитива ПОЛИМАРКЕР

2.4.4.1.    Полимаркер не имеет геометрических атрибутов. Представлением полимаркера на станции управляет ИНДЕКС ПОЛИМАРКЕРА или набор индивидуально заданных атрибутов поли-маркера (ТИП МАРКЕРА, МАСШТАБ МАРКЕРА или ИНДЕКС UBF.TA ПОЛИМАРКЕРА) или комбинация этих двух способов в зависимости от значений ФВА для типа маркера, масштаба маркера и индекса цвета полимаркера. ИНДЕКС ПОЛИМАРКЕРА является указателем в таблице связок полимаркера, каждое поле которой содержит тип маркера, масштаб маркера и индекс цвета полимаркера.

2.4.4.2.    Устанавливаются обязательные типы маркеров с I по 5: точка, знак плюс, звездочка, окружность и диагональный крест. Каждый из них центрируется в позиции, которую отмечает. Все станции вывода и ввода-вывода должны поддерживать типы маркеров с 1 по 5, обеспечивая хорошую их распознаваемость в данных позициях. Типы маркеров больше 5 резервируются для будущей стандартизации. Типы маркеров с отрицательными значениями зависят от реализации.

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

2.4.5.    Атрибуты примитива ТЕКСТ

2.4.5.1. Текст имеет геометрические атрибуты ВЫСОТА ЛИТЕРЫ. ВЕРТИКАЛЬ ЛИТЕРЫ, НАПРАВЛЕНИЕ ТЕКСТА, ВЫРАВНИВАНИЕ ТЕКСТА.

Примитив ТЕКСТ имеет также два неявно задаваемых атрибута; ШИРИНА ЛИТЕРЫ и ГОРИЗОНТАЛЬ ЛИТЕРЫ. Они неявно определяются функциями ЗАДАТЬ ВЫСОТУ ЛИТЕРЫ и ЗА-

Страница 18

ГОСТ 27817-88

ДАТЬ ВЕРТИКАЛЬ ЛИТЕРЫ соответственно. Эти атрибуты отличны от обычных геометрических атрибутов — их значения связываются с примитивами ТЕКСТ в момент создания этих примитивов, они ие могут быть изменены впоследствии и их значения подвергаются тем же преобразованиям, что и другие геометрические данные, содержащиеся в описании примитива.

2.4.52. Представлением текста на станции управляет ИНДЕКС ТЕКСТА или набор индивидуально задаваемых атрибутов текста (ШРИФТ и ТОЧНОСТЬ ТЕКСТА, МАСШТАБ РАСШИРЕНИЯ ЛИТЕРЫ, МЕЖЛИТЕРНЫИ ПРОСВЕТ, и ИНДЕКС ЦВЕТА ТЕКСТА) или некоторая комбинация этих двух способов в зависимости от значений ФВА для шрифта и точности текста, масштаба расширения литер, межлнтерного просвета и индекса цвета текста. ИНДЕКС ТЕКСТА является указателем в таблице связок текста, каждое иоле которой содержит значения для шрифта и точности представления текста, масштаба расширения литеры, межлнтерного просвета и индекса цвета текста.

2.4.5.3. Точное управление визуальным представлением ТЕКСТА на станции обеспечивается следующими характеристиками: ВЫСОТА ЛИТЕРЫ, ШИРИНА ЛИТЕРЫ, МАСШТАБ РАСШИРЕНИЯ ЛИТЕРЫ, НАПРАВЛЕНИЕ ТЕКСТА, ВЕРТИКАЛЬ ЛИТЕРЫ, ГОРИЗОНТАЛЬ ЛИТЕРЫ. МЕЖЛИТЕРНЫИ ПРОСВЕТ и ВЫРАВНИВАНИЕ ТЕКСТА.

Использование этих значений в отображаемом тексте определяется установленным значением атрибута шрифта и точности представления текста (шрифт и точность представления текста являются компонентами одного п того же атрибута). ВЫСОТА ЛИТЕРЫ определяет номинальную ширину литеры, реальная ширина определяется отношением ширины литеры к ее высоте, которое установлено разработчиком шрифта и может меняться от литеры к литере. Масштаб расширения литеры определяет отклонение отношения ширины к высоте литеры от отношения, указанного разработчиком шрифта. ВЕРТИКАЛЬ ЛИТЕРЫ задает вертикальное направление литеры. ГОРИЗОНТАЛЬ ЛИТЕРЫ определяет направление основания литеры. Имеют значение только направления, но не длины этих векторов.

Для атрибута НАПРАВЛЕНИЕ ТЕКСТА возможными значениями являются ВПРАВО, ВЛЕВО, ВВЕРХ и ВНИЗ. Этот атрибут определяет направление вычерчивания строки текста. Для значения ВПРАВО строка текста пишется вдоль линии основания литеры в направлении, указываемом атрибутом ГОРИЗОНТАЛЬ ЛИТЕРЫ. Для значения ВЛЕВО направление текста противоположно направлению, указываемому атрибутом ГОРИЗОНТАЛЬ ЛИТЕРЫ. Для значения ВВЕРХ направление текста совпадает с направлением, определяемым атрибутом ВЕРТИКАЛЬ

Страница 19

С. 16 ГОСТ 27817-88 (СТ СЭВ 6177-88)

ЛИТЕРЫ. При значении ВНИЗ направление текста противоположно направлению, указываемому атрибутом ВЕРТИКАЛЬ ЛИТЕРЫ. При значениях ВВЕРХ и ВНИЗ литеры располагаются так, что их центры лежат на прямой линии в направлении, определяемом атрибутом ВЕРТИКАЛЬ ЛИТЕРЫ.

2.4.O.4. Зизченне межлнтерного просвета определяет размер дополнительного промежутка между двумя соседними литерами. Если значение этого атрибута равняется нулю, литеры располагаются одна за другой вдоль направления, указываемого атрибутом НАПРАВЛЕНИЕ ТЕКСТА, без какого-либо дополнительного промежутка между ними. Отрицательное значение межлнтерного просвета приведет к перекрытию соседних литер Межлитерный просвет определяется как дробный множитель к номинальной высоте литер для данного типа шрифта.

2.4.5.5.    Действие атрибутов ВЫСОТА ЛИТЕРЫ, ШИРИНА ЛИТЕРЫ, МАСШТАБ РАСШИРЕНИЯ ЛИТЕРЫ, НАПРАВЛЕНИЕ ТЕКСТА, МЕЖЛИТЕРНЫЙ ПРОСВЕТ и ШРИФТ ТЕКСТА заключается в определении (воображаемого) прямоугольника со сторонами, параллельными осям координат, внутри которого расположен текст. Граничные стороны прямоугольника строятся следующим образом. Если значение атрибута НАПРАВЛЕНИЕ ТЕКСТА равно ВЛЕВО ил в ВПРАВО, то высота прямоугольника совпадает с высотой литеры выбранного шрифта, левая сторона прямоугольника совпадает с левой стороной самой левой литеры текста, а правая сторона прямоугольника — с правой стороной самой правой литеры текста и, аналогично, нижняя сторона прямоугольника совпадает с нижней стороной самой нижней литеры текста; ширина прямоугольника равна ширине самой широкой литеры выбранного шрифта.

2.4.5.6.    Действие атрибутов ВЕРТИКАЛЬ ЛИТЕРЫ и ГОРИЗОНТАЛЬ ЛИТЕРЫ заключается в преобразовании прямоугольника, в результате чего получается параллелограмм (результат поворота и сдвига прямоугольника) — граничный параллелограмм текста

2.4.5.Т. Атрибут ВЫРАВНИВАНИЕ ТЕКСТА управляет расположением граничного параллелограмма относительно заданной позиции текста. Для простоты атрибут ВЫРАВНИВАНИЕ ТЕКСТА определяется, исходя из стандартных значений по умолчанию для ВЕРТИКАЛИ ЛИТЕРЫ и ГОРИЗОНТАЛИ ЛИТЕРЫ, когда граничный параллелограмм представляет собой прямоугольник. Горизонтальный компонент атрибута ВЫРАВНИВАНИЕ ТЕКСТА имеет четыре значения: ЛЕВОЕ, ЦЕНТРАЛЬНОЕ, ПРАВОЕ и ОБЫЧНОЕ. Если значение горизонтального компонента ЛЕВОЕ, то левая сторона граничного параллелограмма текста проходит через заданную позицию текста. Если значение горизонтального компонента ЦЕНТРАЛЬНОЕ, по-

Страница 20

ГОСТ 27817-55 (СТ СЭВ 6177-88) С. 17

С*<т»м* КООРОИП»! **»>фи,

Пр*№0>Т

Черг. 3

зиипя текста лежит посредине между левой и правой сторонами граничного параллелограмма текста. Таким образом, если значение атрибута'НАПРАВЛЕНИЕ ТЕКСТА ВВЕРХ или ВНИЗ, то прямая линия, проходяшая через центральные линии литер, также проходит через позицию текста. Вертикальный компонент атрибута ВЫРАВНИВАНИЕ ТЕКСТА имеет шесть значений: ПО ВЕРХУ, ПО ЗАГЛАВНОЙ, ПО ЦЕНТРУ. ПО ОСНОВАНИЮ, ПО НИЗУ и ОБЫЧНОЕ. Каждое из атих значений относится к одной из специфических шрифтовых горизонтальных линий в определении литеры, как показано на черт. 3. При значении ПО ВЕРХУ верхняя сторона граничного параллелограмма текста проходит через позицию текста. При значении ПО ЗАГЛАВНОП позиция текста лежит на линии заглавной всей строки (НАПРАВЛЕНИЕ ТЕКСТА равно ВЛЕВО или ВПРАВО) или на линии заглавной самой высокой литеры в строке (НАПРАВЛЕНИЕ ТЕКСТА равно ВЛЕВО или ВПРАВО), или на линии, равноотстоящей от центральных линии верхней и нижней литер (НАПРАВЛЕНИЕ ТЕКСТА равно ВВЕРХ или ВНИЗ). При значении ПО ОСНОВАНИЮ позиция текста лежит на линии основания всей строки (НАПРАВЛЕНИЕ ТЕКСТА равно ВЛЕВО или ВПРАВО) или на базовой линии нижней литеры строки (НАПРАВЛЕНИЕ ТЕКСТА равно ВВЕРХ или ВНИЗ)!

При значении ПО НИЗУ нижняя сторона граничного параллелограмма проходит через позицию текста.

Страница 21

С la ГОСТ 27817—88 (СТ СЭВ 6177—S8)

В общем случае ориентация, называемая горизонтальной, определяется направлением вектора ГОРИЗОНТАЛЬ ЛИТЕРЫ при значении ВПРАВО и противоположно ему при значении ВЛЕВО. Аналогично ориентация, которую называем вертикальной, определяется направлением вектора ВЕРТИКАЛЬ ЛИТЕРЫ при значении ВВЕРХ и противоположному ему при значении ВНИЗ.

2.4.5.8. Каждый компонент ВЫРАВНИВАНИЕ ТЕКСТА может иметь значение ОБЫЧНОЕ. Для каждого значения атрибута НАПРАВЛЕНИЕ ТЕКСТА действие определенного компонента, имеющего значение ОБЫЧНОЕ, эквивалентно одному из других значений этого компонента. В каждом случае значение эквивалентного выравнивания выбирается так, чтобы добиться естественного выравнивания для этого значения атрибута НАПРАВЛЕНИЕ ТЕКСТА. Полный список эквивалентных значений приведен в табл. 1.

Таблица 1

КАПРАВЛЕ HIC ТЕКСТА

Значение ОБ!<Ч.!ОЕ ал* гор*л>тт*Д1»»ого и leprnxMbuero шраачим.'яЛ

ВПРАВО

(ЛЕВОЕ. ПО ОСНОВАНИЮ)

ВЛЕВО

(ПРАВОЕ. ПО ОСНОВАНИЮ)

ВВЕРХ

(ЦЕНТРАЛЬНОЕ, ПО ОСНОВАНИЮ)

ВНИЗ

(ЦЕНТРАЛЬНОЕ. Г10 ВЕРХУ)

Начальные значения геометрических атрибутов текста следующие: ВЫСОТА ЛИТЕРЫ МК — 0,01 (т. е. 1 % высоты окна, принятого по умолчанию);

ВЕРТИКАЛЬ ЛИТЕРЫ МК — (0,1);

НАПРАВЛЕНИЕ ТЕКСТА - ВПРАВО;

ВЫРАВНИВАНИЕ ТЕКСТА - (ОБЫЧНОЕ. ОБЫЧНОЕ).

Начальные значения неявно задаваемых геометрических атрибутов текста следующие:

ШИРИНА ЛИТЕРЫ МК — 0,01 (т. е. то же значение, что и ВЫСОТА ЛИТЕРЫ);

ГОРИЗОНТАЛЬ ЛИТЕРЫ МК — (1,0).

2.4.5.Э. Шрифт и точность представления текста вместе составляют единый атрибут текста. Значение номера шрифта текста используется для выбора определенного шрифта на станции. Каждая станция должна обеспечивать не менее одного шрифта, который позволял бы генерировать графическое представление литер, определенных в СТ СЭВ 359—76. Такой шрифт должен иметь номер 1. Номера шрифтов, большие I, резервируются для будущей стандартизации. Номера шрифтов меньше нуля зависят от реализации.

2.4.5.10. Значение точности представления текста используется для выбора «степени близости» представления текста на гра*

Страница 22

ГОСТ 27817-68 (СТ СЭВ 6177-88) С. 19

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

ДО СТРОКИ — строка литер генерируется с заданным шрифтом и располагается в заданной позиции текста. ВЫСОТА ЛИТЕРЫ, ШИРИНА ЛИТЕРЫ и масштаб расширения литеры учитываются в зависимости от возможностей станции. Атрибуты ВЕРТИКАЛЬ ЛИТЕРЫ. ГОРИЗОНТАЛЬ ЛИТЕРЫ, НАПРАВЛЕНИЕ ТЕКСТА, ВЫРАВНИВАНИЕ ТЕКСТА и межлнтерпыЙ просвет нет необходимости использовать. Отсечение выполняется методом зависящим от реализации н от графической станции;

ДО ЛИТЕРЫ — строка литер генерируется с заданным шрифтом. Для представления каждой отдельной литеры характеристики ВЫСОТА ЛИТЕРЫ, ШИРИНА ЛИТЕРЫ, направление вертикали ВЕРТИКАЛЬ ЛИТЕРЫ н масштаб расширения литеры определяются способом, зависящим от станции. Расстояние между литерами вычисляется точно, причем для этой цели используются идеальные литеры, точно вычисленные с учетом характеристик текста и размеров шрифта. Положение результирующего граничного параллелограмма определяется атрибутом ВЫРАВНИВАНИЕ ТЕКСТА и позицией текста. Отсечение выполняется, как минимум, с точностью до одной литеры;

ДО ШТРИХА — строка литер заданного шрифта изображается в позиции текста с использованием всех атрибутов текста. Строка литер усекается точно по границе прямоугольника отсечения. Точность представления текста ДО ШТРИХА не обязательно означает, что изображение строится из коротких вектор-штрихов; при условии, что шрифт удовлетворяет правилам, определяющим точность ДО ШТРИХА', он может быть реализован в любом виде, например в виде растрового представления.

2.4.5.11. Реализация ЯГС уровня вывода нуль должна поддерживать точность представления текста ДО СТРОКИ и ДО ЛИТЕРЫ. Если уровень вывода реализации выше чем нуль, то точности представления текста поддерживаются следующим образом. Станция может использовать точность представления текста более высокую, чем от нее требуется, т. е. если в конкретном шрифте поддерживается точность ДО ШТРИХА, то подразумевается, что точности ДО СТРОКИ и ДО ЛИТЕРЫ также доступны для этого шрифта, хотя графическая станция не обязательно должна поддерживать все точности данного шрифта (т. с. для заданного шрифта может отсутствовать точность ДО ШТРИХА или обе точности ДО ШТРИХА и ДО ЛИТЕРЫ). Шрифт текста и точность должны быть обязательно реализованы на станции. То есть для любого уровня ЯГС, поддерживающего шрифт точности ДО ШТРИХА, каждая станция, реализованная на конкретном обору-

Страница 23

С 20 ГОСТ 27817-88 (СТ СЭВ 6177-88)

дованин, должна поддерживать не менее одного текстового шрифта точности ДО ШТРИХА. Это должен быть шрифт с номером 1, содержащий набор литер в соответствии со СТ СЭВ 359—76. Это означает, что для тех реализаций, которые имеют недостаточно развитую аппаратную часть, для текста точности ДО ШТРИХА потребуется программный генератор литер. Не обязательно, чтобы все станции поддерживали все шрифты, но для тех из них, которые имеют такую возможность, для выбора одинаковых шрифтов следует использовать один и тот же номер шрифта.

2.4.5.12.    Шрифты определяются только в реализации ЯГС. Разработчик шрифта задает форму каждой литеры, описывая ее в локальной двумерной декартовой системе координат шрифта. Шрифт может быть равномерным или пропорциональным. Для каждой литеры в системе координат шрифта определяются прямоугольник литеры, линия основания шрифта, средняя линия шрифта, линия заглавной и центральная линия (черт. 3).

Для равномерных шрифтов прямоугольники всех литер име* ют одинаковый размер. Для пропорциональных шрифтов ширина прямоугольников литер может быть различной для разных литер. Границы прямоугольника литеры должны быть параллельны осям системы координат шрифта. Линия основания шрифта, средняя линия и линия заглавной должны быть параллельны оси X и находиться в пределах, ограниченных вертикальными линиями прямоугольника литеры. Положение средней линии шрифта задается разработчиком шрифта с целью выоавниванвя строк текста. Центральная линия параллельна оси Y и делит литеру пополам. Точное положение центральных линий для всех литер определяется разработчиком шрифта.

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

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

Страница 24

ГОСТ 27817-88 (СТ СЭВ 6177-88) С 21

к>«х и нижних выносных элементов соседних литер (соответствует типографскому термину «плотный набор»).

2.4.5.14.    Значения атрибутов ВЫСиТА ЛИТЕРЫ и ВЕРТИКАЛЬ ЛИТЕРЫ задаются в мировых координатах, в то же время сами литеры генерируются на станции в координатах устройства, используя зависящие от станции шрифт и точность. Поэтому геометрические атрибуты должны быть преобразованы так. чтобы станция имела возможность приемлемо создавать литеры. Вместе с кодами литер передаются значения вектора высоты литеры, параллельного вектору ВЕРТИКАЛЬ ЛИТЕРЫ и имеющего длину, равную значению атрибута ВЫСОТА ЛИТЕРЫ, и вектора ширины, параллельного вектору ГОРИЗОНТАЛЬ ЛИТЕРЫ и имеющего длину, равную значению атрибута ШИРИНА ЛИТЕРЫ.

Эти векторы подвергаются преобразованию нормирования, преобразованию сегмента, если текст входит в состав сегмента, и преобразованию станции. Они также запоминаются в сегментах. Затем векторы могут быть использованы генератором литер на станции. Таким образом форма отдельных литер может быть искажена преобразованием нормировании с различными коэффициентами по осям X и Y и преобразованием сегментов.

2.4.5.15.    Высота литеры на станции определяется длиной преобразованного вектора высоты. Направление вертикали литеры определяется направлением преобразованного вектора высоты. Ширина литеры задается длиной преобразованного вектора ширины, умноженного на отношение ширины литеры заданного шрифта к ее высоте и на масштаб расширения литеры. Направление линии основания литеры определяется направлением преобразованного вектора ширины. Литеры размещаются в граничном параллелограмме текста последовательно в соответствии со значениями атрибута НАПРАВЛЕНИЕ ТЕКСТА и МЕЖЛИТЕР-НЫЙ ПРОСВЕТ.

Граничный параллелограмм текста затем располагается в соответствии со значением атрибута ВЫРАВНИВАНИЕ ТЕКСТА и позиции текста, содержащейся в задании примитива ТЕКСТ.

На черт. 4—7 приведены примеры действия различных значений атрибутов текста. На черт. 8 показаны примеры, иллюстрирующие воздействия различных преобразований нормирования на вид изображаемого текста.

2.4.6. Атрибуты примитива ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ

2.4.6.1 Полигональная область имеет геометрический атрибут ТОЧКА ПРИВЯЗКИ ШАБЛОНА, а также два неявно задаваемых атрибута ВЕРТИКАЛЬ ШАБЛОНА и ГОРИЗОНТАЛЬ ШАБЛО- | НА. Они неявно определяются функцией ЗАДАТЬ РАЗМЕР ШАБЛОНА. Их значения связываются с примитивами ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ при создании примитивов и не могут быть изменены впоследствии. На значения этих атрибутов дейст-

Страница 25

с 22 ГОСТ 27817-88 (СТ СЭВ 6177-88)

9r««rv>w?    rCVV*f?t"Ctr.HK    «'pnSvfSW    ftnt'*

Hkjro’i

ВЫСОТА ЛИТЕРЫ-1. ЗЕРТИКАЛЬ ЛИТЕРЫ* Ю,’>, НАПРАВЛЕНИЕ Т|КСТА-1ПГА*0. «ЫГА*>*УвАНИЕ rtKCTA-(ОБЫЧНОЕ. OSbWOCl

ВЫСОТА ЛИТЕРЫ-O.S. ВЕРТИКАЛЬ ЛИТ ЕРИ-<0,11, ИАЛРАвЛЕНИС TCKCTA-WVADO. ВЫГА*МИ*ЛИ*€ ТЕКСТА- ‘.ОБЫЧНО*. ОБЫЧНОЕ!

*МСОТА ЛИТЕРЫ-1. ВЕРТИКАЛЬ ЛИТ*РЫм0.1>, м/*ЛРАВЛЕНИ€ ТЕХСТА-вПРАЕО. ВЫРАВНИВАНИЕ ТЕКСТА— (ПРАВОЕ. ПОВЕРХУ!

OU't ОТ А ПИТС РМ-1. ВЕРТИКАЛЬ

miTfcpLMO.i). налравпсни»: ТЕКСТА-ВНИЭ. еЫРАВНИВАННА ТЕКСТА-|С6Ь?ЧН0Е. 06UHNC*.

8ЫС01А ШСТ^ЬИ.

В€?ГУКАЛЬ ЛИГЕЯЫ- 1*.Ф.

НАПРАВЛЕНИЕ текста-*лраво.

ВЫГАОНИВАНИЕ ТЕКСТА-'ОБЫЧНОЕ. ОвЫЧНОС}

С0о»-*«днк«;    _

X —    !•<:*!

-----гмм<и

И UIWTCAUMi* iVMHI

• -    -    -    '£***■*«***    х»м<7«тог>ъгмк

Т^.СТ* |уКМ4Н»Ъ.й ляп НАЛРАИЯГНИ1-в*Ю|

.1

1(*Н

t а гокщнкъл г^^и#»аьс <«кС* hw»i к»*эс’ч АО ЛТ9ИХА. ЧООД**-€^С*1Г дошис^н*    (мчки    ' я мемгм т<ри»й лрос*«г силен Ф.

? Р »•"« npwwip»* лиамя т1.чмой    титтй.

3 Иа*ии*•<►**• атрибут*''o*««5*Hvtk'

Черт. 4

Страница 26

ГОСТ 27817-88 (СТ СЭВ 6177 -88) С- 23

Бгм*<И«    *Ш€90»1р«+С&Х

'етрифутс# текст*

МАСЦТАЬ РАСШИРЕНИЯ ЛИТ£>УО 75 Ы**ЛКТ?РНЫЙ Г*»ОСВ^ч»

?Л4СО?А1. ^АШЮПИИЯ ЛИ7£*ЪМ МЕ*ЛИТь>ИЫй IVОС81Т<1.3

Пртяоамк*

Ъ гакшх«к-ых пр^л>^:«« жшн/я >»>м#тр1мк«*« ИОИ&уХ*    по

• roMKct* Гредл•*».•.*• 1^«Г* АОШТГИХА *.    ЭД'ОХиуГи

Черт. 5

Страница 27

С. 24 ГОСТ 27817-88 (СТ СЭВ 6177-88*

0 ******    «гее—«V*    вт(*Ь,-?• н«м#


млсцтлг, расширения литер»;-* М£Ж/Т*Т£»*Ый Г^ОСВСГ-О ВЫСОТА ПииЬ|.-< ДМ

ВЕРТИКАЛЬ Г/ТЕ»! «1-1.1» КАПРАВГг^ ТЕКСТА-ВПРАЬО

ТЕКСТА- (ОСЬНИ&г.

ОБЫЧНО* <


«АСШТА6 РАСШИРЕНИЯ HMT'W:

цсялитеяный просвет—з.з Высота лите>ы-1 ВЕРТИКАЛЬ ЛМЮМ-lft'l КАПРАРЛсНИв ТЕКСТА-р.цto

КЬОДВМИВАЯИС ПКСТА-ЮЬУчид».

О&ЫЧМОб)

MACUTAo РАОИН^пИЯ ЛИТ£РЬ>-1 >Л£КЛИТ£?ЬЫ^ ПРОСВЕТ*0 ВЫСОТА ,-VTI:РЫ-1 ВЕРТИКАЛЬ ПИТЕРЫ-» -1.01

НАПРАВЛЕНИЕ ТЕКСТА-вПРАВО ВЫРАВНИВАНИЕ ТЕКСТА- 'flQCf РЕДИНЕ. ПО ВЕРХУ»

МАСОТАБ РАСати^ИЯ ЯИТ1РЫП МЕ*ПИТЕРЧи,Р. просэП4 ftVIСОТА ЛИТЕРЫ'1 ВЕРТИКАЛЬ ЛИТЕРУ-i0.1l HAnPA»ntMHt TtKCTA-fcWV»^

I

ВЫРАЗМИВАМИ* Tf КСТА-1ЛЕ80Е. • п,жи^и.    П0С<«ДИН£,

1. ПСО««рГ.*»1и М****** ОГт&7ЯТП1Ъ*0 **£»«,.ffO "fMWtpi. ЛДОШм-ОГО

-«ч»о*.4 и S.

7. 8 <чкп«дм«м ."pMfo*    (риим    пятя    * но п^жюугог^иг.»

«Иtip

Черт. 6

Страница 28

ГОСТ 27617-88 (СТ СЭВ 6177—88) С. 25

Э«и«]<и« икмпгмм тшНИИ» •    IMTI

вЬ»АРНИПА*и£ ТЕКСТА- 1Ц£КТРД,ПЬМ0€. Гр НЮУ> ЛряиМи*

Лйд<4«сммч-Гы    4    я    5

Черт. 7

Страница 29

«. 2$ ГФСТ 27817-88 (СТ СЭВ 6177-88)

Втлт» р>—ww пс»о»«к*«и.Д «цмчхш*" •г »«кст iwocm До МТРИХА

В "Л itMl*

Имя :м<ста

1ЧКМ ПрМ<|1 MOtwaqmUMUl с яа«ки м'ам« по о«*ч

X и У

ПХМ г^мемкши*

•ормрса*»»!«««оЭДтнватеи иичО;оы-«‘ п» ОГ" *

« 3 [*Н боЛЫЛММ, ЧМ« ПО С 04 У

Черт. 8

вуют те же преобразования, что и на геометрнчесхке данные, содержащиеся в описании примитива.

2А.6.2. Представлением полигональной области на графической станции управляет ИНДЕКС ПОЛИГОНАЛЬНОЙ ОБЛАСТИ или набор индивидуально задаваемых атрибутов полигональной области (ВИД ЗАПОЛНЕНИЯ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ, ИНДЕКС ЗАПОЛНИТЕЛЯ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ н ИНДЕКС ЦВЕТА ПОЛИГОНАЛЬНОЙ ОБЛАСТИ или некоторая комбинация этих двух способов в зависимости от значений ФВА для вида заполнения индекса заполнителя и индекса цвета полигональной области.

ИНДЕКС ПОЛИГОНАЛЬНОЙ ОБЛАСТИ является указателем в таблице связок полигональной области, каждая запись которой содержит значения вида заполнения, индекса заполнителя и индекса цвета полигональной области.

Страница 30

ГОСТ 27817-88 (СТ СЭВ $177—88) С 27

2.4.6.3.    Вид заполнения полигональной области используется для определения способа заполнения области. Он может иметь следующие значения:

ПУСТО — область не заполняется, а только вычерчивается граничная ломаная цветом, задаваемым индексом цвета полигональной области, который выбран либо через связку полигональной области, или индивидуально в зависимости от значения соответствующего ФВА. Тип линии и толщина линии зависят от реализации.

ЗАЛИВКА ЦВЕТОМ — внутренность многоугольника заполняется одним цветом, задаваемым индексом цвета полигональной области, который выбран либо через связку полигональной области, либо индивидуально в зависимости от значения соответствующего ФВА.

ПО ШАБЛОНУ — внутренность многоугольника заполняется с использованием индекса заполнителя полигональной области, который выбран через связку полигональной области, или индивидуально в зависимости от значения соответствующего ФВА. В этом контексте индекс вида заполнителя может рассматриваться как индекс шаблона.

ШТРИХОВКА — внутренность многоугольника заполняется с использованием индекса цвета полигональной области и индекса заполнителя полигональной области, которые выбраны через связку полигональной области или индивидуально в зависимости от значения соответствующего ФВА. Индекс заполнителя полигональной области используется как показатель в списке видов штриховки; в этом случае он иногда рассматривается как индекс штриховки.

2.4.6.4.    Для вида заполнения ПО ШАБЛОНУ шаблон определяется представлением шаблона, которое задается матрицей индексов цвета размером (NXXNY), являющихся указателями в таблице цвета. Размер и позиция начала шаблона определяются полем шаблона. Поле шаблона, представляющее собой параллелограмм, задается атрибутами ГОРИЗОНТАЛЬ ШАБЛОНА и ВЕРТИКАЛЬ ШАБЛОНА, определяемыми относительно атрибута ТОЧКА ПРИВЯЗКИ ШАБЛОНА. Концептуально поле шаблона подразделяется на сетку ячеек размером (NXXNY). Матрица индексов цвета связывается с ячейками следующим образом: элемент (1, NY) связывается с ячейкой, один из углов которой определяется значением атрибута ТОЧКА ПРИВЯЗКИ ШАБЛОНА; элементы с возрастающим первым индексом связываются с последовательными ячейками в направлении, указываемом атрибутом ГОРИЗОНТАЛЬ ШАБЛОНА; элементы с убывающим вторым индексом связываются с последовательными ячейками в направлении, указываемом атрибутом ВЕРТИКАЛЬ ШАБЛОНА. Атрибуты, определяющие поле шаблона, подвергаются всем

Страница 31

С. 28 ГОСТ 27817-88 (СТ СЭВ 6177—88)

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

2.4.6.5. Отображение преобразованных ячеек шаблона на пиксели растрового дисплея выполняется г:о следующим правилам:

если центр пикселя лежнт внутри параллелограмма, определяемого ячейкой, то ему приписывается цвет этой ячейки;

пикселю присваивается цвет ячейки, соответствующий центру пикселя.

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

2.4.66. Для вида заполнения ШТРИХОВКА индекс штриховки выбирается из видов штриховки. Виды штриховки больше нуля резервируются для будущей стандартизации; виды штриховки меньше нуля зависят от станции.

Будет ли штриховка подвергаться преобразованиям или нет зависит от станции.

2.4.Б.7. Вид заполнения ПУСТО должен быть реализован на каждой станции вывода или ввода-вывода. Реализация остальных видов заполнения ЗАЛИВКА ЦВЕТОМ. ПО ШАБЛОНУ п ШТРИХОВКА зависит от конкретной станции.

2.4.7.    Атрибуты примитива МАТРИЦА ЯЧЕЕК

2.4.7.1.    Матрица ячеек не имеет атрибутов, кроме ИДЕНТИФИКАТОРА УКАЗАНИЯ. При этом матрица индексов цвета, которые являются указателями в таблице цвета, является частью задания матрицы ячеек.

2.4.8.    Атрибуты примитива ОБОБЩЕННЫЙ ПРИМИТИВ ВЫВОДА

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

« текста, полигональной области, "но это представление может и не зависеть ни от одного из этих наборов. Будут ли при этом использованы индексы связок или индивидуально задаваемые атрибуты, зависит от значений соответствующих ФВА. Наборы атрибутов, наиболее подходящие для заданной функции ОПВ, включаются в состав ОПВ как часть его задания и записываются в таблицу описания станции. Например, если ОПВ является матрицей ячеек, то матрица индексов цвета должна присутствовать в блоке данных этого ОПВ.

Страница 32

ГОСТ 27817-88 (СТ СЭВ 6177—8S) С. 2S

2.4.9. Цвет

2.4.9.1.    В ЯГС цвет определяется в нескольких различных ситуациях. Он может быть атрибутом примитива, тогда он задается через связку этого примитива, или как индивидуальный атрибут цвета этого примитива. Он может быть частью шаблона для примитива ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ, когда задается массив значений цвета, или цвет может быть частью самого примитива, называемого МАТРИЦА ЯЧЕЕК, когда также задается массив значений цветов. В каждом случае цвет определяется как индекс в таблице цвета на станции. На каждой станции имеется таблица цвета, в которой указаны все индексы цвета.

2.4.9.2.    Размер таблицы цвета зависит от станции, но записи с номерами ноль и единица обязательны. Запись с номером ноль соответствует цвету' фона. Цвет фона — это цвет поверхности визуализации после того, как она очищена. Запись с номером единица является цветом накладываемого изображения, принимаемым по умолчанию, а записи с номерами больше единицы, относятся к альтернативным цветам накладываемого изображения. Записи в таблице могут быть установлены функцией ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ЦВЕТА, которая определяет цвет как комбинацию интенсивностей красного, зеленого и синего компонентов. Заданный цвет преобразуется в ближайший доступный цвет, поддерживаемый станцией. На некоторых станциях может оказаться невозможным изменить цвет фона, в этом случае преобразование заданного цвета в ближайший доступный цвет для фона может отличаться от аналогичного преобразования того же цвета, но когда он является цветом накладываемого изображения.

2.4.9.3.    Некоторые станции не имеют возможности воспроизводить цвета (например станции могут воспроизводить цвет лишь с одним значением интенсивности красной, зеленой, синей составляющих либо они могут генерировать цвета только в виде интенсивностей одного и того же цвета); будем называть такие станции монохромными станциями. Способность станции воспроизводить цвета отмечается в поле «возможность цветопередачи> в таблице описания станции. На монохромных станциях интенсивность вычисляется из значений цвета зависящим от станции способом.

2.5. Станции

2.5.1.    Характеристики станции

2.5.1.1.    В основе ЯГС лежит концепция абстрактных станций. Они представляют собой логический интерфейс, через который прикладная программа управляет физическими устройствами. Некоторые специальные станции обеспечивают средства для хранения и обмена графической информацией.

2.5.1.2.    Для каждого типа станции, поддерживаемого реализацией ЯГС (за исключением специальных станций), имеется тгб-

Страница 33

С. 30 ГОСТ 27817-S8 (СТ СЭВ 6177—«8)

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

2.6.1.3.    Абстрактная станция с максимальными возможностями:

имеет одну адресуемую поверхность визуализации с фиксированной разрешающей способностью;

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

позволяет определить и использовать пространство отображения меньше максимально возможного с гарантией, что никакое изображение не появится вне заданного пространства визуализации;

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

имеет одно или несколько логических устройств ввода для каждого класса ввода;

позволяет производить ввод в режимах ЗАПРОС, ОПРОС, СОБЫТИЕ;

дает возможность устанавливать логические устройства ввода в режим ЗАПРОС, ОПРОС и СОБЫТИЕ независимо друг от друга;

запоминает сегменты и обеспечивает средства для измерения сегментов и манипуляции с ними.

Совсем не обязательно, чтобы станция обладала всеми перечисленными возможностями.

2.5.1.4.    Каждый тип станции может быть отнесен к одной из шести категорий; станция вывода (ВЫВОД), станция ввода (ВВОД); станция ввода и вывода (ВВОД-ВЫВОД), общая память сегментов (ОПС), вывод в метафайл (МВЫВОД), ввод из метафайла (МВВОД).

2.5.1.5.    Станция категории ВЫВОД позволяет осуществлять только вывод графической информации. Она может изображать все примитивы вывода, кроме, возможно, ОБОБЩЕННОГО ПРИМИТИВА ВЫВОДА, который является необязательным. Минимальные требования к средствам изображения примитивов ТЕКСТ и ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ перечислепы в п. 2.4, а для примитива МАТРИЦА ЯЧЕЕК — в п. 3.3.

ЯГС допускает различную форму представления примитивов вывода на разных станциях, позволяя наилучшим образом ис-

Страница 34

ГОСТ 27817—&S (СТ СЭВ 6177-88) С. 31

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

На черт. 2 отражены взаимосвязи атрибутов станции.

2.5.1.6.    Станция категории ВВОД имеет не менее одного логического устройства ввода и не содержит средств вывода.

2.5.1.7.    Станция категории ВВОД-ВЫВОД имеет средства ввода и вывода. Кроме того, станция этой категории при реализации ЯГС представляет дополнительные требования, касающиеся логических устройств ввода.

2.5.1.8.    Станции категории ОПС, МВЫВОД. и МВВОД являются специальными средствами ЯГС, которые обеспечивают возможности временного или постоянного хранения графической информации. Они считаются станциями только с целью сохранения единообразия управления, но в остальном обладают совершенно различными характеристиками.

Реальные станции могут представлять более широкие возможности, чем те, которые предусмотрены в таблице описания станции. Они не могут быть использованы ЯГС. Однако, если станция обладает собственными вычислительными ресурсами, эти дополнительные возможности могут быть доступны через ОБОБЩЕННЫЙ ПРИМИТИВ ВЫВОДА или РАСШИРЕНИЕ, либо они могут быть использованы локально оператором станции. Например, если станция имеет два носителя изображения, то оператор может локально подключать то или другое устройство, не сообщая об этом ЯГС или прикладной программе. С помощью ЯГС можно управлять более чем одним носителем изображения, определяя отдельную станцию для каждого носителя изображения.

2.5.2. Выбор станции

2.5.2.1. Прикладная программа указывает станцию посредством идентификатора станции. Связь со станцией устанавливается функцией ОТКРЫТЬ СТАНЦИЮ, которая связывает идентификатор станции с типом станции и идентификатором соединения (например номером устройства в ФОРТРАНе). Состояние каждой открытой станции отражено в таблице состояния станции.

Манипуляции над сегментами и ввод могут выполняться на всех открытых станциях. Отображение примитивов вывода и сохранение сегментов производятся только на активных станциях. 2 Зек. 2214

Страница 35

С. 32 ГОСТ 27817 88 (СТ СЭВ 6177-М)

Открытая станция становится активной после обращения к функции АКТИВИРОВАТЬ СТАНЦИЮ.

2.5.2.2. При помощи функции ДЕАКТИВИРОВАТЬ СТАНЦИЮ активная станция становится неактивной. Открытая станция закрывается функцией ЗАКРЫТЬ СТАНЦИЮ.

Следующая последовательность функций иллюстрирует выбор станций:

ОТКРЫТЬ СТАНЦИЮ (HI, нид. связи. 1, станция типа А);

ОТКРЫТЬ СТАНЦИЮ (Н2, инд. связи 2. станция типа В);

АКТИВИРОВАТЬ СТАНЦИЮ (Н!);

Функции вывода; {генерируются только на НI};

функции ввода: (возмож«ы HI. Н2):

АКТИВИРОВАТЬ СТАНЦИЮ (Н2);

Функции вывода; (генерируются на HI, H2J;

ДЕАКТИВИРОВАТЬ СТАНЦИЮ (Н1);

Функции вывода: (генерируются только на Н2};

Функции ввода; (возможны HI, Н2);

ЗАКРЫТЬ СТАНЦИЮ (HI):

ДЕАКТИВИРОВАТЬ СТАНЦИЮ (Н2);

ЗАКРЫТЬ СТАНЦИЮ (Н2).

2.5.3. Задержка изменений изображения

2.5.3.1.    Носитель изображения на станции должен в макс'*млль-ной степени отражать действительное состояние изображения в том виде, в каком оно создается прикладной программой. Однако для более эффективного использования возможностей станции ЯГС позволяет задерживать на некоторый промежуток времени действия, запрашиваемые прикладной программой. В течение этого промежутка времени состояние станции может быть неопределенным.

2.5.3.2.    Функция ЗАДАТЬ РЕЖИМ ЗАДЕРЖКИ позволяет прикладной программе при помощи двух атрибутов выбрать тот режим задержки, который учитывает возможности станции и требования прикладной программы. Режим задержки позволяет управлять моментом времени, когда проявляются визуальные эффекты работы функции вывода. Неявная повторная генерация управляет моментом времени, когда проявляются визуальные эффекты работы функций вывода (под изменением изображения подразумевается любое измерение, а не только добавление примитивов к изображению).

Концепция задержки относится только к видимым эффектам функций ЯГС. Воздействия функций на память сегментов или на состояние станции (концептуально) не задерживаются.

2.5.3.3.    Момент обновления управляет возможной задержкой функции вывода; например данные, передаваемые в устройство, могут быть буферизованы, чтобы оптимизировать передачу дан-

Страница 36

ГОСТ 27RI7-88 (СТ СЭВ «177 —АЗ) С. 33

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

БЫСТРО (с максимальной быстротой) — визуальный эффект действия функции проявляется на станции с максимальной быстротой. ЯГС гарантирует, что действия, необходимые для достижения этого визуального эффекта, инициируются до того как управление будет возвращено прикладной программе, вследствие возможных задержек не под влиянием ЯГС, эти действия не обязательно заканчиваются до момента передачи управления;

ГЛОБ (до глобального взаимодействия) — визуальный эффект действия каждой функции проявляется на станции до начала следующего взаимодействия с логическим устройством ввода на любой станции. Если взаимодействие на какой-либо станции уже началось, то визуальный эффект будет проявляться с максимальной быстротой;

ЛОК (до локального взаимодействия) — визуальный эффект действия каждой функции проявляется на станции до начала следующего взаимодействия с логическим устройством ввода на этой станции. Если взаимодействие уже началось, то эффект будет проявляться с максимальной быстротой:

ЛЮБОЙ (в любое время) — визуальный эффект действия каждой функции появится на станции через некоторое время.

2.5.3.4.    Задержка применяется к следующим функциям, генерирующим вывод:

ЛОМАНАЯ;

ПОЛИМАРКЕР;

ТЕКСТ;

ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ;

МАТРИЦА ЯЧЕЕК;

ВСТАВИТЬ СЕГМЕНТ;

СВЯЗАТЬ СЕГМЕНТ СО СТАНЦИЕИ;

ВЫВЕСТИ СЕГМЕНТ НА СТАНЦИЮ;

ИНТЕРПРЕТИРОВАТЬ ЗАПИСЬ.

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

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

2*

Страница 37

С. 34 ГОСТ 27817-88 (СТ СЗВ 6177-88)

параметра «допустимость динамического обновления» в таблице описании станции указывают:

какие изменения приводят к неявной повторной генерации (Н Г1Г);

какие изменения выполняются немедленно (НОИ).

Если изменения выполняются немедленно, то они оказывают воздействия на все примитивы как внутри сегментов, так и вне их. В случае повторной генерации все примитивы вне сегментов будут удалены.

2.5.3.7.    НПГ эквивалентна вызову функции ПЕРЕРИСОВАТЬ ВСЕ СЕГМЕНТЫ. Задержка этого действия управляется режимом НПГ, содержащимся в таблице состояния станции. Этот режим принимает следующие значения:

ЗАПРЕЩЕНА -- НПГ запрещена до тех пор, пока не будет явного запроса, г. е. пате «при обновлении необходим вывод нового кадра» не примет значение ДА;

РАЗРЕШЕНА — НПГ изображения разрешена.

2.5.3.8.    НПГ необходима в следующих ситуациях:

а) если перечисленные ниже функции оказывают видимый эффект:

1)    если поле «допустимость динамического обновления» в таблице описания станции имеет значение НПГ для соответствующих представлений:

ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ЛОМАНОЙ:

ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ПОЛИМАРКЕРА;

ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ТЕКСТА;

ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ;

ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ШАБЛОНА;

ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ЦВЕТА;

2)    если поле «допустимость динамического обновления» в таблице описания станции имеет значение НПГ для преобразований станции:

ЗАДАТЬ ОКНО СТАНЦИИ;

ЗАДАТЬ ПОЛЕ ВЫВОДА СТАНЦИИ;

3)    если поле «допустимость динамического обновления допустимо» в таблице описания станции имеет значение НПГ для приоритета сегмента.

если в открытый сегмент, перекрывающий сегмент с более высоким приоритетом добавляются примитивы;

ЛОМАНАЯ;

ПОЛИМАРКЕР;

ТЕКСТ;

Страница 38

ГОСТ 27S17—88 (СТ СЭП 6177-S8) С 35

ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ;

МАТРИЦА ЯЧЕЕК;

ОБОБЩЕННЫЙ ПРИМИТИВ ВЫВОДА;

ВСТАВИТЬ СЕГМЕНТ;

если выполнение одной из следующих функций влияет на приоритет сегмента:

УДАЛИТЬ СЕГМЕНТ;

УДАЛИТЬ СЕГМЕНТ СО СТАНЦИИ;

СВЯЗАТЬ СЕГМЕНТ СО СТАНЦИЕЙ;

ЗАДАТЬ ПРЕОБРАЗОВАНИЕ СЕГМЕНТА;

ЗАДАТЬ ВИДИМОСТЬ;

ЗАДАТЬ ПРИОРИТЕТ СЕГМЕНТА;

4)    если поле «допустимость динамического обновления» в таблице описания станции имеет значение НПГ для преобразования сегмента:

ЗАДАТЬ ПРЕОБРАЗОВАНИЕ СЕГМЕНТА;

5)    если поле «допустимость динамического обновления* в таблице описания станции имеет значение НПГ для видимости — видимым становится невидимым:

ЗАДАТЬ ВИДИМОСТЬ (НЕВИДИМЫЙ);

G) если поле «допустимость динамического обновления» в таблице описания станции имеет значение НПГ для видимости — невидимый становится видимым:

ЗАДАТЬ ВИДИМОСТЬ (ВИДИМЫЙ);

7)    если поле «допустимость динамического обновления» в таблице описания станции имеет значение НПГ для выделения:

ЗАДАТЬ ВЫДЕЛЕНИЕ;

8)    если поле «допустимость динамического обновления» в таблице описания станции имеет значение НПГ для удаления сегмента:

УДАЛИТЬ СЕГМЕНТ;

УДАЛИТЬ СЕГМЕНТ СО СТАНЦИИ;

6)    если одна из вышеперечисленных ситуаций возникает как результат обращения к функции ИНТЕРПРЕТИРОВАТЬ ЗАПИСЬ.

2.5.3.9. НПГ должна выполняться (включая удаление примитивов. находящихся вне сегментов) только в тех случаях, когда действие какой-либо из перечисленных функций вызывает видимый эффект на экране дисплея. Например, если удаляется невидимый сегмент, повторную генерацию не выполняют. Допускается, чтобы в конкретной реализации выполнялась неявная повторная генерация в любом из приведенных выше случаев. Эффект задержанных действий может стать видимым в любой момент времени, если воспользоваться функцией ОБНОВИТЬ ИЗОБРАЖЕНИЕ НА

Страница 39

С. 36 ГОСТ 27817—«8 (СТ СЭВ 6177-88)

СТАНЦИИ или соответствующим образом изменить состояние задержки.

2.5.4.    Очистка носителя изображения

2 5.4.1. Существуют два варианта проведения очистки носителя изображения:

очистка носителя изображения производится даже в том случае. если он пуст;

производится проверка, заполненность носителя изображения, чтобы избежать бесполезной дополнительной очистки.

Второй вариант означает, что носитель изображения очищается лишь в случае необходимости. Обычно такая ситуации возникает, когда носитель изображения не пуст (т. е. когда запись «за-полценность носителя изображения» в таблице состояния станции имеет значение НЕ ПУСТ). Запись «носитель изображения пуст» в таблице состояния станции устанавливается равной НЕ ПУСТ, если выходные данные были направлены на устройство. Значение НЕ ПУСТ может быть установлено даже в том случае, если выходные данные не появились на носителе изображения (например, примитив ОПВ, который в результате операции отсечения на устройстве был полностью исключен).

Оба варианта очистки носителя изображения доступны пользователю через функцию ОЧИСТИТЬ СТАНЦИЮ. Второй вариант используется также в функциях ОБНОВИТЬ ИЗОБРЖЕНИЕ НА СТАНЦИИ н ПЕРЕРИСОВАТЬ ВСЕ СЕГМЕНТЫ на СТАНЦИИ.

2.5.5.    Удаление примитивов, находящихся вне сегментов

2.5.5.1. Удаление примитивов, находящихся вне сегментов, производится в следующих ситуациях:

а)    при обращении к функциям Я ГС:

ОЧИСТИТЬ СТАНЦИЮ;

ПЕРЕРИСОВАТЬ ВСЕ СЕГМЕНТЫ НА СТАНЦИИ;

ОБНОВИТЬ ИЗОБРАЖЕНИЕ НА СТАНЦИИ, если параметр «флаг повторной генерации» имеет значение ВЫПОЛНИТЬ и если иоле «при обновлении необходим вывод нового кадра» в таблице состояния станции имеет значение ДА.

ЗАДАТЬ РЕЖИМ ЗАДЕРЖКИ, если параметр «режим неявной повторной генерации» имеет значение РАЗРЕШЕНО и поле «при обновлении необходим вывод нового кадра* имеет значение ДА;

б)    если необходима неявная повторная генерация и параметр «режим неявной повторной генерации» имеет значение РАЗРЕШЕНО;

в)    если любая нз вышеописанных ситуаций возникает как результат работы функции ИНТЕРПРЕТИРОВАТЬ ЗАПИСЬ.

Страница 40

ГОСТ 27817-83 (СТ СЭВ 6I77-8S) С 37

2.5.6.    Передача сообщений на станцию

Функция СООБЩЕНИЕ позволяет передать на станцию строку литер. Прикладная программа не может управлять расположением и формой представления строки литер, и в конкретной реализации допускается помещать устройство, не входящее в состав станции, но связанное с ней.

2.6.    Системы координат и преобразования

2.6.1.    Преобразования нормирования

2.6.1.1.    В ЯГС прикладной программист может строить графическое изображение из отдельных частей, каждая из которых концептуально определяется в своей собственной системе мировых координат (МК). Взаимное расположение этих частей описывается в едином для всех пространстве нормированных координат (ПК), в которое отображаются все заданные системы мировых координат. Набор преобразований нормирования определяет преобразования из систем мировых координат в единое пространство нормированных координат, которое можно рассматривать как независимый от станций абстрактный носитель изображения. Такое нормированное изображение можно запомнить и затем подвергнуть преобразованиям через механизм сегментации; оно также может быть записано в метафайл.

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

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

2.6.1.4.    Хотя пространство НК концептуально простирается до бесконечности, та его часть, в которой должно быть размещено поле вывода и которую можно увидеть на станции, ограничивается диапазоном |0, l.]x[0., 1.). Кроме того, в конкретной реализации может поддерживаться только ограниченный диапазон НК. Однако этот диапазон всегда существенно больше, чем квадрат [О., 1-JXI0-. I.], что позволяет эффективно использовать функцию ВСТАВИТЬ СЕГМЕНТ. В частности, всегда должен быть обеспечен диапазон изменения НК в пределах [—7., 7.]X[—7., 7.].

Страница 41

С. 38 ГОСТ 27817-88 (СГ СЭВ 6177—«в)

2.6.1.5. Каждое преобразование нормирования идентифицируется номером — целым числом в диапазоне от нуля до зависящего or реализации п, которое содержится в таблице состояния Я! С. Преобразование нормирования с номером нуль является тождественным преобразованием, отображающим область [0.. 1..] X Х[0., I.,J МК в область [0., I.,JX[0-. 1.J НК. Это преобразование не может быть изменено.

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

Текущее преобразование нормирования задается функцией ВЫБРАТЬ ПРЕОБРАЗОВАНИЕ НОРМИРОВАНИЯ и используется для вывода до тех пор, пока не будет выбрано другое преобразование. По умолчанию выбирается преобразование с номером ноль.

2.6.2. Отсечение

2.6.2.1. Поле вывода и окно, задающие определенное преобразование нормировании, используются также для задания прямоугольника отсечения. Поле «прямоугольник отсечения» в таблице состояния ЯГС устанавливается равным полю вызола текущего преобразования нормирования при определении поля вывода текущего преобразования нормирования или при выборе преобразования нормирования. Отсечение по границам поля вывода может быть разрешено или не разрешено. Имеется единый глобальный переключатель (индикатор отсечения), указывающий, будет ли прямоугольник отсечения использоваться для отсечения.

2 6.2.2. Отсечение не проводится непосредственно во время выполнения преобразования нормирования, оно задерживается до того момента, когда примитивы будут выводиться на носитель изображения графической станции. Прямоугольник отсечения, связанный с примитивами вывода, входящими в состав сегментов, хранится вместе с координатами этих примитивов, преобразованными в НК. Функция ВСТАВИТЬ СЕГМЕНТ позволяет заменить прямоугольник отсечения, записанный вместе с примитивом вывода при создании сегмента, на прямоугольник отсечения, взятый из таблицы состояния ЯГС.

Примитивы, посланные на станцию категории МВЫВОД отсечению ис подвергаются.

Страница 42

ГОСТ 27817 88 (СТ СЭВ 6I77-&S) С. 39

2.6.3. Преобразование станции

2.6.3.1. Пространство нормированных координат может рассматриваться как независимый от станции абстрактный носитель изображения. Для каждой открытой станции независимо выбирается некоторая часть пространства НК в диапазоне [0.. I .JX <(0,. 1.], которая будет отображаться на носитель изображения. Преобразование станции отображает НК в координаты устройства (КУ) данной станции.

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

В любом случае координаты устройства отображаются в пространство изображения следующим образом:

а)    начало системы координат устройства находится в левом нижнем углу изображения;

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

в)    координаты X и Y возрастают соответственно слева направо и снизу вверх.

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

Размер пространства изображения, выраженный в единицах измерения КУ. заносится в таблицу описания станции.

2.6.3.2.    Преобразование станции представляет собой ненскажа* ющее преобразование НУ в К У. т. е. выполняет перенос и одинаковое масштабирование по обеим осям с положительными коэффициентами. Таким образом для композиции изображений можно воспользоваться преобразованиями нормирования, тогда как преобразование станции позволяет отображать на разных станциях различные части скомпонированной картины.

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

Преобразование станции может быть определено в любой момент времени после открытия станции. Изменение преобразования станции может вызвать неявную повторную генерацию изображения.

2.6.3.3.    Преобразование станции определяется заданием границ области в системе нормированных координат в диапазоне (0., 1.) X X 10., 1.) — окна станции, которая должна быть отображена в определенную область пространства координат устройства — поле

Страница 43

С 40 ГОСТ 27817-83 (СТ СЭВ 6177 58)

вывода станции. Границы окна и поля вывода станции определяют прямоугольники со сторонами, параллельными осям координат г, системах НК и КУ. Границы входят в состав прямоугольников.

2.6.3.4.    Для предотвращения выхода выводимого изображения за пределы окна на станции в ЯГС производится обязательное отсечение по окну станции, которое не может быть отменено. Поскольку окно станции задается в диапазоне [0., I.J X [0., 1.] НК, то гарантируется, что на любой станции может быть визуализирована только часть пространства НК, лежащая в пределах (0., 1.) X X |0., 1.|.

2.6.3.5.    Для обеспечения одинакового масштабирования по каждой оси преобразование станции должно отображать окно станции на самый большой прямоугольник, который может быть pas-мешен в пределах поля вывода станции так. чтобы было сохранено соотношение сторон н нижний левый угол окна станции отображался в нижний левый угол поля вывода станции. Таким образом, если соотношение сторон окна и поля вывода станции различны, то часть пространства сверху и справа от поля вывода останется неиспользованным.

2.6.3 6. Преобразование станции по умолчанию устанавливается таким, чтобы отображать пространство НК [0., 1.) X [0., I.) во все пространство изображения станции. Если пространство изображения не яиляется квадратом, то применяются те же правила, что описаны выше, для достижения одинакового масштабирования по каждой оси.

2.6.3.7. Преобразование станции может быть изменено функциями ЗАДАТЬ ОКНО СТАНЦИИ или ЗАДАТЬ ПОЛЕ ВЫВОДА СТАНЦИИ. Поскольку изменение преобразования станции может быть задержано (см. п. 2.5.3), эти функции производят лишь запись значений параметров «требуемое поле вывода станции» в таблицу состояния станции. Записи «текущее окно станции» и «текущее поле вывода станции» продолжают содержать ранее установленные Значения параметров преобразования. Только после модификации изображения текущим значениям присваиваются требуемые значения.

Полная схема потока данных для графического вывода приведена на черт. 9, где системы координат МК, НК и КУ являются двумерными декартовыми системами координат.

2.6.4.    Преобразование входных данных устройства взода позиции

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

Для этого входные данные преобразуются из КУ в НК с помощью преобразования, обратного преобразованию станции. В качестве входных данных для устройства ввода позиций могут вы-

Страница 44

ГОСТ 27817-88 (СТ СЭВ 6177-88) С 41

Схема потока данных дая графического вы пода в ЯГС

Черт. 9

ступать только те позиции, которые лежат внутри части поля вывода станции, на которую отображается окно станции (это может бить часть поля вывода станции* если соотношение сторон у поля вывода станции и у окна станции различны). Следовательно, входные данные устройства ввода позиции всегда определяют позицию в НК в диапазоне (0., 1.] X [0., I.J.

Страница 45

е. 42 ГОСТ 27817—«8 (СТ СЭВ 8177-88)

2.6.42. Чтобы передать прикладной программе позицию в мировых координатах, позиция должна быть преобразована из НК н МК с помощью преобразования, обратного одному из преобразований нормирования. Для каждою преобразования нормирования определен приоритет поля вывода, при вводе который относится к вводу позиций и последовательности позиций. Преобразования нормирования упорядочены в соответствии со значениями входных приоритетов поля вывода. При инициализации ЯГС инициируется некоторое число преобразований нормирования, для которых окна и поля пыоода задаются в виде единичных квадратов, а приоритеты поля вывода при вводе устанавливаются в соответствии с номером преобразования, причем преобразование с номером ноль имеет иапвысшнй приоритет, преобразование с номером единица следующий но величине и т. д. Входной приоритет поля вывода при вводе преобразования нормирования может быть изменен в любой момент времени.

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

2.6.4.4.    Поскольку преобразование с номером ноль является тождественным и неизменяемым преобразованием, связанным с полем вывода (О., 1.) X |0., 1). всегда обеспечивается попадание позиции, полученной от устройства ввода позиции, по крайней мере в одно из полей вывода.

Схема потока данных для устройства ввода позиции приведена на черт. 10.

2.6.4.5.    Преобразование с номером ноль имеет вначале иаивыс-ший входной приоритет ввода, поэтому входные данные устройства ввода позиции в МК будут совпадать с НК до тех пор, пока не будет задано преобразование нормирования с более высоким приоритету ввода. Если какое-либо преобразование нормирования больше не будет использоваться для преобразования входных данных устройства ввода позиции в МК, оно может быть сделано фактически недоступным путем назначения ему более низкого входного приоритета поли вывода, чем у преобразования с номером ноль.

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

2.6.4.6.    В отчете о событии, помещенным в очередь событий устройством ввода позиций в режиме СОБЫТИЕ, позиция из КУ

Страница 46

ГОСТ 27817—W (СТ СЭВ 8177-88) С. 43

Схема потока входных данных для устройства ввода позиции

Г

Прообр* дма* стз»м^

>

I

Ж.

-L

j ПресЧ(М»<,.>*ки«

I «ср'-ир'.в*-

LT~

Прлоброюм им* «орми;ов»-ти> I

Просевают нив нооонооп»-' мня I

4*

J?

Ilsl

л

>51

с S v

Черт. 10

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

Страница 47

С. -14 ГОСТ 27817-88 (СТ СЭВ 6177-88)

2.64.7. В течение промежутка времени между занесением отчета о событии в очередь событий и выполнением функции ОЖИДАТЬ СОБЫТИЕ, при котором из очереди удаляются входные данные устройства ввода позиции, прикладная программа может изменить параметры преобразования нормирования и преобразования станции. Чтобы введенная позиция в КУ соответствовала позиции в МК. полученной из очереди событий, прикладная программа не должна изменять параметры преобразований пока устройство ввода позиций находится в режиме СОБЫТИЕ.

2.6.5. Преобразование входных данных устройства ввода последовательности позиций

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

При генерации каждой точки последовательности позиций координаты этой точки преобразуются из КУ в НК с помощью преобразования, обратного преобразованию станции. Входные данные устройства ввода последовательности позиций можно получить лишь для позиций, лежащих внутри той части текущего поля вывода станции, на которую отображается текущее окно станции (по аналогии с получением входных данных устройства ввода позиции). Таким образом, входные данные устройства ВВОДА ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ всегда состоят из точек в НК в диапазоне (0., 1.)Х[0.. I.).

2.6.5.2.    Чтобы передать прикладной программе значения координат точек в мировых координатах, координаты точки должны быть преобразованы из НК в КУ преобразованием, обратным одному из преобразований нормирования. Позиции в НК. полученные от устройства ВВОДА ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ. сравниваются с нолями вывода преобразований нормирования с целью найти такое преобразование нормирования, поле вывода которого содержит все эти точки н имеет нанвысшнй приоритет.

2.6.5.3.    Точки, полученные от устройства ввода последовательности позиций, затем преобразуются с помощью преобразования, обратного этому преобразованию нормирования, и передаются прикладной программе в МК вместе с номером использованного преобразования нормирования.

Если устройство. ВВОДА ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ находится в режиме ОПРОС, то используемое преобразование нормирования может измениться между последовательными опросами.

При работе в режиме СОБЫТИЕ может возникнуть конфликтная ситуация, аналогичная той. которая возникает при работе с

Страница 48

ГОСТ 27817-88 (СТ СЭВ 6177 -88) С. 43

устройством ввода позиции. В течение промежутка времени между занесением отчета о событии в очередь событий и выполненном функции ОЖИДАТЬ СОБЫТИЕ, при котором из очереди удаляются входные данные устройства ВВОДА ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ, прикладная программа может изменить параметры преобразования нормирования и преобразования станции. Чтобы введенные оператором позиции в КУ соответствовали позициям в МК, полученным из очереди собыл!Й, прикладная программа не должна менять параметры преобразований нормализации, пока устройство ВВОДА ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ находится а режиме СОБЫТИЕ.

2.7. Сегменты

2.7.1.    Понятие о сегментах

2.7.1.1.    В ЯГС графические примитивы вывода могут быть объединены в сегменты, а также могут создаваться вне сегментов. Каждый сегмент имеет свое уникальное имя, задаваемое из прикладной программы. Допускаются следующие действия над сегментами:

преобразование;

изменение видимости (видимый/невндимый):

выделение (например мерцанием);

упорядочение отображения сегментов, что влияет на изображение перекрывающихся примитивов;

изменение чувствительности к указанию;

удаление;

изменение имени;

вставление сегмента в отрытый сегмент или в поток примитивов вне сегментов.

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

2.7.1.2.    Каждый примитив в сегменте имеет связанный с ним ИДЕНТИФИКАТОР УКАЗАНИЯ, который образует второй уровень именования. Единственной задачей ИДЕНТИФИКАТОРА УКАЗАНИЯ является идентификация примитивов, его нельзя использовать для других целей. Этот уровень именования введен в ЯГС для уменьшения накладных расходов при работе с сегментами в приложениях, где при вводе необходимо различать большое число отдельных частей изображения, а необходимость в преобразованиях сегментов менее важна,

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

Страница 49

С. 46 ГОСТ 27817-88 (СТ СЭВ 6177-88)

ЗАДАТЬ ИДЕНТИФИКАТОР УКАЗАНИЯ (4);

СОЗДАТЬ СЕГМЕНТ (1);

Функции вывода; {сегмеит-I, ИДЕНТИФИКАТОР УКАЗАНИЯ-4}

ЗАДАТЬ ИДЕНТИФИКАТОР УКАЗАНИЯ (2);

Функции вывода; {сегмент-1, ИДЕНТИФИКАТОР УКАЗАНИЯ-2}

ЗАКРЫТЬ СЕГМЕНТ (1);

Функции вывода; {примитивы не указываемы, ИДЕНТИФИКАТОР УКАЗАНИЯ-2}

ЗАДАТЬ ИДЕНТИФИКАТОР УКАЗАНИЯ (5);

Функции вывода; (примитивы не указываемы, ИДЕНТИФИКАТОР УКАЗАНИЯ-5}

СОЗДАТЬ СЕГМЕНТ (2);

Функции вывода; {сегмсит-2, ИДЕНТИФИКАТОР УКАЗАНИЯ-5}

ЗАДАТЬ ИДЕНТИФИКАТОР УКАЗАНИЯ (3);

Функции вывода; {сегмент-2, ИДЕНТИФИКАТОР УКАЗАНИЯ^}

ЗАКРЫТЬ СЕГМЕНТ (2).

2.7.1.4.    После закрытия сегмента примитивы, входящие в его состав, уже не могут быть изменены; нельзя также добавить в сегмент новые примитивы или удалить существующие. Не предусмотрено никаких функций по расширению сегмента после его закрытия. Вместе с примитивами в памяти сегментов сохраняются прямоугольники отсечения и атрибуты примитивов (геометрические атрибуты, атрибуты, управляющие негеометрическимн характеристиками н ИДЕНТИФИКАТОР УКАЗАНИЯ). Однако допускается выполнять геометрические преобразования, изменять атрибуты сегмента, вносить изменения в таблицы связок станции и таблицы нвета, на которые есть ссылки внутри сегмента. Все значения, описывающие состояние сегмента (например имя, атрибуты сегмента и список станций, активных во время создания сегмента), запоминаются в таблице состояния сегмента, которая хранится в ЯГС в течение всего времени существования сегмента.

2.7.1.5.    Каждый сегмент запоминается на всех станциях, активных в момент создания сегмента (СОЗДАТЬ СЕГМЕНТ). Его можно удалить со всех графических станций функцией УНИЧТОЖИТЬ СЕГМЕНТ. Он может быть удален также с конкретной станции функцией УДАЛИТЬ СЕГМЕНТ ИЗ СТАНЦИИ. Можно удалить все сегменты, записанные в память определенной станции. путем обращения к функции ОЧИСТИТЬ СТАНЦИЮ.

2.7.1.6.    Память сегментов на станциях ВЫВОД и ВВОД/ВЫВОД называется памятью сегментов станции (ПСС). ЯГС под-яерживгет также и другую систему памяти для независимого от

Страница 50

ГОСТ 27817-88 (СТ СЭВ 6177—88) С 47

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

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

2.7.2. Атрибуты сегментов

2.7.2.1.    Атрибуты сегментов воздействуют на все примитивы, входящие в состав сегмента. Имеются следующие атрибуты сегмента:

ПРЕОБРАЗОВАНИЕ СЕГМЕНТА;

ВИДИМОСТЬ — сегмент изображается или не изображается;

ВЫДЕЛЕНИЕ — видимый сегмент выделяется (например мерцанием) или не выделяется;

ПРИОРИТЕТ СЕГМЕНТА — если части сегментов (например ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ, МАТРИЦА ЯЧЕЕК) перекрываются, то предпочтение отдается сегменту с большим приоритетом как в случае изображения этих сегментов, так и при указании на них;

ЧУВСТВИТЕЛЬНОСТЬ К УКАЗАНИЮ — возможность выбора сегмента с помощью устройства указания.

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

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

2.7.2А. При указании на примитивы сегментов, перекрывающие друг друга, выбирается сегмент с более высоким приоритетом. Если же перекрываются примитивы одного сегмента или сегментов с равными приоритетами, то результат указания зависит от реализации.

Vi 2 Зак 2214

Страница 51

С. 4Й ГОСТ 27817-88 (СТ СЭВ 6177-88)

2.7.3. Преобразования сегмента

2.7.3.1.    Преобразование сегмента производит отображение ПК в НК. Оно выполняет перенос, масштабирование и поворот. Преобразование сегмента определяется матрицей преобразования.

2.7.3.2.    Матрица преобразования имеет размерность 2X3, э том числе часть 2X2 для масштабирования и поворота и часть 2Х XI для переноса. С помощью вспомогательных функций (СФОРМИРОВАТЬ МАТРИЦУ ПРЕОБРАЗОВАНИЙ. ВЫЧИСЛИТЬ РЕЗУЛЬТИРУЮЩУЮ МАТРИЦУ ПРЕОБРАЗОВАНИЙ) прикладная программа может формировать матрицы преобразования. Фиксированный центр, относительно которого выполняется масштабирование и поворот, и вектор переноса могут быть заданы в МК или НК. В первом случае значения фиксированного центра и переноса в МК сначала преобразуются с использованием текущего преобразования нормирования.

2.7.3.3.    Преобразование сегмента выполняется после преобразования нормирования, но перед отсечением.

2.7.3.4.    Преобразование, заданное функцией ЗАДАТЬ ПРЕОБРАЗОВАНИЕ СЕГМЕНТА, в памяти сегментов не выполняется, а только заносится в таблицу состояния сегмента. При каждом перечеркивании сегмента это преобразование сегмента выполняется перед отсечением. Последовательные обращения к функции ЗАДАТЬ ПРЕОБРАЗОВАНИЕ СЕГМЕНТА для одного и того же сегмента ке накапливаются; каждая последующая матрица преобразования записывается на место предыдущей. Обратившись к функции ЗАДАТЬ ПРЕОБРАЗОВАНИЕ СЕГМЕНТА с единичной матрицей преобразования, можно получить первоначальный сегмент без потери информации. Преобразование сегмента не действует на входные данные устройства овода позиции.

2.7.4.    Отсечение и память сегментов станции

2.7.4.1.    Отсечение производится после выполнения преобразования нормирования и преобразования сегмента. Каждый примитив отсекается по прямоугольнику отсечения, который связывается с примитивом в момент включения его в сегмент. Если запись «индикатор отсечения* в таблице состояния ЯГС в этот момент имеет значение ОТСЕКАТЬ, то в качестве прямоугольника отсечения, связанного с примитивом, указывается прямоугольник отсечения из таблицы состояния ЯГС; в противном случае ои устанавливается равным области НК [0., l.]X(0., I.].

Прямоугольники отсечения не преобразуются преобразованием сегмента и поэтому отсечение всегда выполняется по прямоугольнику, стороны которого параллельны осям координат пространства

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

Страница 52

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 49

тивны в момент их создания. Примитивы вне сегментов не могут повторно использоваться. Я ГС не определяет способ организации и формат памяти сегментов (если только могут выполняться любые операции над сегментами, и обеспечивается корректное применение операции отсечения к каждому примитиву).

2.7.5.    Общая память сегментов

2.7.5.1.    В обшен памяти сегментов (ОПС) сегменты могут запоминаться для последующего использования функциями ВЫВЕСТИ СЕГМЕНТ НА СТАНЦИЮ, СВЯЗАТЬ СЕГМЕНТ СО СТАНЦИЕЙ и ВСТАВИТЬ СЕГМЕНТ. Ни одна из перечисленных функций не изменяет содержимого сегментов. В реализации ЯГС допускается использовать только одну ОПС.

2.7.52. Как показано на черт. 9, на видовом конвейере точка входа в блок записи примитивов в ОПС непосредственно следует за точкой, в которой данные распределяются по станциям. То есть ОПС рассматривается как станция (категории ОПС). Примитивы перед их распределением по графическим станциям преобразуются из мировых координат в НК.

Будет ли ОПС реализована в рамках самого ЯГС или путем использования возможностей соответствующей физической станции или другого устройства ввода-вывода, оставляется на усмотрение разработчика.

2.7.6.    Функции ОПС и отсечение

2.7.6.1.    Как и для других станций, сегмент заносится в ОПС только в том случае, если ОПС активна в момент его создания. С каждым примитивом при этом связывается прямоугольник отсечения. Если запись «индикатор отсечения» в таблице состояния ЯГС в момент создания сегмента имеет значение ОТСЕКАТЬ, то в качестве прямоугольника отсечения берется прямоугольник отсечения из таблицы состояния ЯГС. в противном случае указывается область (0.. l.j X (0., 1.| в НК.

2.7.6.2.    Функция ВЫВЕСТИ СЕГМЕНТ НА СТАНЦИЮ копирует примитивы из находящегося в ОПС сегмента на заданную графическую станцию. Функция преобразует примитивы в соответствии с преобразованием сегмента и помещает связанные с примитивами прямоугольники отсечения и преобразованные примитивы на видовой конвейер в точку, откуда информация была взята, однако информация посылается только на станцию, заданную в данном конкретном обращении, в соответствии с черт. 9. В момент обращения к функции сегмент не может быть открыт. В отличие от функции СВЯЗАТЬ СЕГМЕНТ СО СТАНЦИЕЙ эта функция не приводит к запоминанию сегмента на станции.

2.7.6.3.    Функция СВЯЗАТЬ СЕГМЕНТ СО СТАНЦИЕЙ копирует сегмент в ППС заданной графической станции таким образом. как это было бы, если бы станция была активной в момент создания сегмента. Прямоугольники отсечения копируются без из-

Страница 53

С. 50 ГОСТ 27817-88 (СТ СЭВ 6177-88)

менения. К этой функции также нельзя обращаться, когда сегмент открыт.

2.7.6.4.    Функция ВСТАВИТЬ СЕГМЕНТ позволяет преобразовать и вновь включить в поток примитивов вывода примитивы, входящие в записанный в ОПС сегмент. Функция ВСТАВИТЬ СЕГМЕНТ сначала считывает примитивы из сегмента в ОПС, выполняет преобразование включения, после чего засылает их в видовой конвейер в точку, предшествующую точке распределения данных по станциям. Все прямоугольники отсечения во вставляемом сегменте игнорируются. Каждому обрабатываемому примитиву приписывается новый прямоугольник отсечения, который совпадает с прямоугольником отсечения из таблицы состояния Я ГС, если запись «индикатор отсечения» в таблице состояния ЯГС имеет значение ОТСЕКАТЬ и устанавливается равным (0., l.J X [0., I.], если «индикатор отсечения> имеет значение БЕЗ ОТСЕЧЕНИЯ. Другими словами, прямоугольники отсечения приписываются вставляемым примитивам точно таким же образом, как и непосредственно генерируемым примитивам. Таким образом, всем примитивам, обработанным одним обращением к функции ВСТАВИТЬ СЕГМЕНТ, приписывается один и тот же прямоугольник отсечения. Внесенная информация может быть скова записана в ОПС, если в этот момент ОПС является активной и сегмент открыт.

2.7.6.5.    Обращение к функции ВСТАВИТЬ СЕГМЕНТ не влияет на примитивы вывода, передаваемые по видовому конвейеру до или после этого обращения. Функция ВСТАВИТЬ СЕГМЕНТ используется в случае, когда сегмент открыт, но сам открытый сегмент не может быть вставлен.

2.8. Ввод графических данных

2.8.1.    Логические устройства ввода

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

2.8.1.2.    Логические устройства ввода идентифицируются идентификатором станции, классом устройства ввода н номером устройства.

2.8.1.3.    Идентификатор станции определяет открытую графическую станцию, категории ввода или ввода/вывода. Логическое устройство ввода является частью графической станции.

2.8.1.4.    Класс устройств ввода определяет тип входных данных, выдаваемых логическим устройством ввода. Существует шесть классов устройств ввода и соответствующих им типов входных данных:

ВВОД ПОЗИЦИИ: выдает значения координат позиции в системе мировых координат и номер преобразования нормирования;

ВВОД ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИЙ: выдает последовательность позиций в системе мировых координат и номер преобразования нормирования;

Страница 54

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. б>

ВВОД ЧИСЛА: выдает действительное число;

ВЫБОР АЛЬТЕРНАТИВЫ: выдает признак ВЫБОР и неотрицательное целое число, определяющее выбор из набора альтернатив:

УКАЗАНИЕ ОБЪЕКТА: выдает признак УКАЗАНИЕ, имя сегмента и идентификатор указания;

ВВОД СТРОКИ: выдает последовательность литер.

2.8.1.5.    Различные логические устройства ввода одного и того же класса одной и той же станции различаются по номеру.

2.8.1.6.    Графическая станция ввода и станция ввода-вывода должны содержать но крайней мере одно логическое устройство ввода. Реализация ЯГС, которая поддерживает, по крайней мере, одну станцию ввода-вывода, должна обеспечить оператора не менее чем одним логическим устройством ввода каждого класса, определенного на данном уровне реализации.

2.8.1.7.    Каждое логическое устройство ввода может работать » трех режимах: ЗАПРОС, ОПРОС, СОБЫТИЕ. В каждый момент времени логическое устройство ввода может находиться в одном и только одном режиме, установленном путем обращения к какой-либо из функций группы ЗАДАТЬ <класс устройства зоода> РЕЖИМ.

2.8.1.8.    В зависимости от режима работы входные данные с устройств получают следующими способами:

ЗАПРОС — каждое обращение к функции ЗАПРОСИТЬ <класс устройства ввода> вызывает попытку чтения значения входных данных с заданного логического устройства ввода, которое должно находиться в режиме ЗАПРОС. Затем ЯГС ожидает пока оператор не введет входные данные или не выполнит команду принудительного прекращения ввода. Действия, выполняемые по команде принудительного прекращения ввода, зависят от конкретного логического устройства ввода и от реализации. Если выход из режима производится вследствие принудительного прекращения ввода. то значение входных данных оказывается неопределенным;

ОПРОС — обращение к функции ОПРОСИТЬ <класс устройства ввода> приводит к тому, что ЯГС, не ожидая действий оператора, выдает текущее значение входных данных с заданного логического устройства ввода, которое должно находиться в режиме ОПРОС;

СОБЫТИЕ — ЯГС поддерживает очередь событий, состоящую из упорядоченных по времени отчетах о событиях. Отчет о событии содержит идентификатор логического устройства ввода и значение входных данных с устройства. Отчет о событиях генерируется асинхронно в результате воздействий оператора на устройства ввода, находящееся в режиме СОБЫТИЕ. Прикладная программа может выбрать из очереди самый «старый» отчет о событии и проанализировать его содержимое, а также удалить из очереди все

Страница 55

С. 52 ГОСТ 27817—88 (СТ СЭВ 6177-88)

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

'2.8.1.9. Логическое устройство ввода осуществляет взаимодействие с оператором в течение времени, пока оно находится в режимах ОПРОС или СОБЫТИЕ, а в режиме ЗАПРОС — только во время выполнения функции ЗАПРОСИТЬ Скласс устройства вво-да>.

Несколько устройств, входящих в состав нескольких станций, могут принимать участие во взаимодействиях одновременно.

2.8.2. Модель логического устройства ввода

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

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

2.8.2.3.    Измерение логического устройства ввода представляет собой значение, определяемое одним или несколькими физическими устройствами ввода, вместе с отображением измерения. Одним и тем же физическим устройством ввода может одновременно определяться более чем одно измерение, при этом для каждого измерения задается свое отображение. Измерение может рассматриваться как состояние независимого, активного процесса (процесс измерения). Каждое такое состояние в точности соответствует значению входных данных, поступающих в ЯГС. Процесс измерения существует, пока логическое устройство ввода принимает участие во взаимодействии.

2.8.2.4.    При запуске процесса измерения осуществляется проверка относящихся к данному логическому устройству ввода данных d таблице состояния станции. Прежде всего начальное значение проверяется на допустимость в соответствии с правилами, зависящими от входного класса. Если проверка заканчивается успешно, то в качестве текущего состояния процесса измерения используется начальное значение, в противном случае используется значение, зависящее от применяемого логического устройства ввода. Затем выводится подсказка для указания готовности устройства к использованию. (Форма подсказки для устройства определяется типом подсказки и эха для этого устройства, который может быть выбран путем вызова соответствующей функции ИНИЦИАЛИЗИРОВАТЬ). Этим завершается запуск процесса измерения.

2.5.2.5.    Если процесс измерения сопровождает эхо, оператору досылается информация о текущем состоянии процесса измерения.

Страница 56

ГОСТ 27817-88 (СТ СЭВ 6177—R8) С 5Э

2.8.2.G.    Фиксатор логического устройства ввода представляет собой одно или несколько физических устройств ввода вместе с «отображением фиксатора». Фиксатор используется оператором для указания существенных моментов времени. Это моменты, когда фиксатор «срабатывает». Одно действие оператора (например нажатие кнопки или концевого переключателя светового пера) вызывает срабатывание не более одного фиксатора. С одним и тем же фиксатором могут быть связаны несколько логических устройств ввода.

2.8.2.7.    Фиксатор можно рассматривать как независимый активный процесс (процесс фиксации), который посылает сообщение о срабатывании одному или нескольким получателям. Логическое устройство ввода может быть получателем для своего фиксатора, если оно находится в неудовлетворенном состоянии ЗАПРОС или в режиме СОБЫТИЕ. Оба этих условия могут быть справедливы одновременно для различных логических устройств ввода. Процесс фиксации существует только в том случае, если у фиксатора имеется по крайней мере один получатель, в противном случае процесс не существует.

2.8.2.8.    Если в момент срабатывания фиксатора логическое устройство ввода находится в неудовлетворенном состоянии ЗАПРОС. то значение измерения этого логического устройства ввода исиользуется в качестве результата выполнения операции ЗАПРОС.

2.8.2.9.    Если одно или несколько устройств, содержащие данный фиксатор находятся в режиме СОБЫТИЕ, то при срабатывании фиксатора идентификаторы этих устройств и значения их измерений записываются в очередь событий в виде отдельных отчетов о событиях.

2.8.2.10.    Если срабатывание фиксатора приводит к выполнению операции ЗАПРОС или к добавлению отчетов о событиях в очереди событий. ЯГС оповещает об этом оператора, причем форма оповещения зависит от реализации логического устройства вывода и никак не контролируется функциями ЯГС.

2.8.3.    Режимы работы логических устройств ввода

2.8.3.1.    Режим работы логического устройства ввода может быть изменен путем вызова одной из функций ЗАДАТЬ РЕЖИМ <класс устройств ввода>.

2.8.3.2.    После зызова функции ЗАДАТЬ РЕЖИМ Скласс устройств ввода> с параметром «режим работы», имеющим значение ЗАПРОС, измерение устройства не выполняется, и идентификатор устройства отсутствует в списке получателей фиксатора устройства.

2-8.3.3. После вызова функции ЗАДАТЬ РЕЖИМ Скласс устройств веода> с параметром «режим работы», имеющим значение СОБЫТИЕ, запускается процесс измерения данного устройст-

Страница 57

С. 54 ГОСТ 27817-88 (СТ СЭВ 6177-88)

ва, и идентификатор устройства присутствует в списке получателей фиксатора устройства.

2.8.3.4.    После вызова функции ЗАДАТЬ РЕЖИМ <класс устройств ввода> с параметром «режим работы», имеющим значение ОПРОС, запускается процесс измерения данного устройства, но идентификатор устройства в списке получателей фиксатора этого устройства не устанавливается.

2.8.3.5.    Первоначально логическое устройство ввода находится в режиме ЗАПРОС.

2.8.3.6.    Пока устройство находится в режиме ЗАПРОС, значение входных данных может быть получено путем обращения к соответствующей функции ЗАПРОСИТЬ < класс устройств вво-да>. В результате выполняются следующие действия:

запускается процесс измерения данного устройства, значение входных данных этого устройства устанавливается равным начальному значению из таблицы состояния графической станции (см. п. 2.8.4). Процессом измерения формируется ЭХО, если ЭХО включено для данного устройства;

индикатор устройства добавляется в список получателей фиксатора этого устройства. Если перед этим список был пуст, то процесс фиксации запускается;

выполнение функций ЯГС приостанавливается до тех пор, пока не сработает фиксатор данного устройства или оператор принудительно не прекратит взаимодействие;

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

прекращается процесс измерения;

идентификатор устройства удаляется из списка получателей фиксатора этого устройства. Еслп этот список пуст, то процесс фиксации прекращается;

если фиксатор сработал, то выдается значение входных данных и признак ЕСТЬ В противном случае выдается признак ОТБОЙ.

2.8.3.7.    Пока логическое устройство находится в режиме ОПРОС. значение входных данных может быть получено путем обращения к функции ОПРОСИТЬ УСТРОЙСТВО <класс устройств ввода>. В результате выполнения этой функции значение входных данных, не ожидая срабатывания фиксатора, устанавливается равным значению текущего состояния процесса измерения.

2.8.3.8.    Пока логическое устройство ввода находится в режиме СОБЫТИЕ, значения входных данных добавляются в виде отчетов о событиях в очередь событий и могут быть получены последовательно путем обращения к функции ОЖИДАТЬ СОБЫТИЕ с последующим обращением к одной из функций ПОЛУЧИТЬ <класс устройств ввода >.

Страница 58

ГОСТ 27817-88 (СТ СЭВ 6177-8в) С. 5S

На черт. Н показано влияние каждого из режимов работы н» измерение и фиксатор логического устройства нывода.

Взаимосвязь между измерением и фиксатором для различных режимов работы, показанная

для одного логического устройства ввода

При срабатывании фи<о»тсрл в приклвдчу<о программу ПОСМП4СТСЛ o*io значение.

Р«ИИМ ЗАПРОС

Л ЗАПРОС

-1-^ И»м«р<ииТ« ■ -у •

Взаимодейсто/с дни тс" 8 1«ч»ни« единственного запроса

Фиксатор

Пусковой механизм пс испопмуетси. Значение пасы, wu* приходной про'рамме пои. каждом обращении к функции ОПРОСИТЬ, в течение одного взаимодействия функций ОПРОСИТЬ можв! выаысл'^я многократно

РЕЖИМ ОПРОС

ОПРОСИТЬ

Фиксатор

С

С

Змач<миа дгикых айзда и идеити фикатгр уг*ройстоз при ерабэтывгнии ©икса.орз гюсъимютеи в единую оч«-(***., отк до они удал потея путем cCoawc-нл к функции СКИДАТЬ CObtiT',12


О» кса’ор


Тмктк.е cipeiiKHo6ojHi<4»>cT пою* **©д*их двччи*

Топч»с«тг>егки обозначают сигналы ЪГфамвмм


Режим СОБЫТИС


ОЖИДАТЬ СОБЫТИЕ

ОЧЕРсДЬ


С



Черт. II

2.8.4. Измерение каждого класса устройств ввода 2.8.4.1. Измерение устройства ВВОДА ПОЗИЦИИ состоит из позиций в системе мировых координат и номера преобразованию нормировании. Обозначим эти данные через Р и N соответственно.

Страница 59

С 56 ГОСТ *7817— 88 (СТСЭВ 6177— S8)

Тогда Р, преобразованное в НК с помощью N, находится в пределах окна станции, а также внутри окна, определенного преобразованием N. Кроме того, Р, преобразованное в НК с помощью N, не попадает ми в одно из полей вывода, имеющих приоритет более высокий, чем у поля вывода, заданного преобразованием нормирования с номером N.

2.8.4.2.    Измерение устройства ВВОДА ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИЙ СОСТОЯТ из последовательности в системе мировых координат и номера преобразования нормирования. Обозначим эти точки соответственно через Р1 ... Рп. а через N — номер преобразования. Тогда все точки Pi (К—i< = n), преобразованные в НК с помощью N. находятся внутри окна станции, а также внутри окна, определенного преобразованием N, и, кроме того, не существует поля вывода с более высоким приоритетом, чем у поля вывода, заданного преобразованием нормирования с номером N. которое содержало бы все точки.

Заметим, что N может изменяться по мере того, как точки добавляются к последовательности позиций.

2.8.4.3.    Обращение к любой из функций ЗАДАТЬ ОКНО. ЗАДАТЬ ПОЛЕ ВЫВОДА или ЗАДАТЬ ВХОДНОЙ ПРИОРИТЕТ ПОЛЯ ВЫВОДА может вызвать изменение Р (любого из Pi для последовательности позиций) или N. или обоих значении вместе, но при условии, что новые значения будут удовлетворять указанным выше ограничениям.

2.8.4.4.    Прилуняется следующее правило: ни одно преобразование. имеющее приоритет меньилы. чем преобразование с номером 0. не может входить в состав измерения для устройства ВВОДА ПОЗИЦИИ или устройства ВВОДА ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИЙ.

Примечание. При установке по умолчанию значений входных приоритетов полей вывода поле вывода, заданное преобразованием нормирования с номером 0, имеет нянвысшяй приоритет.

2.8.4.5.    Измерение УСТРОЙСТВА ВВОДА ЧИСЛА представляет значения входных данных, которые являются действительными числами. Каждое значение должно находиться между минимальным и максимальным значениями (возможно включительно), которые содержатся в блоке данных в таблице состояния графической станции.

2.8.4.6.    Компонентами измерения УСТРОЙСТВА ВЫБОРА АЛЬТЕРНАТИВЫ являются значение ВЫБОР или НЕТ ВЫБОРА и целое число в диапазоне от 0 ло некоторого максимального значения, которое зависит от устройства и указано в таблице описания станция. Если первый компонент имеет значение ВЫБОР, то целое число является правильным значением. Ввод данных от устройства ВЫБОРА АЛЬТЕРНАТИВЫ обычно производится при нажатии оператором кнопки (при этом цифровой идентификатор

Страница 60

ГОСТ 27817- 88 (СТ СЭВ 6177- 88) С. 57

кнопки определяет измерение) или комбинации кнопок (измерение определяется на основе комбинаций нажатых кнопок).

28.4.7. Измерением устройства УКАЗАНИЯ являются значение УКАЗАНИИ или НЕТ УКАЗАНИЯ, имя сегмента и идентификатор указания. Если первый компонент имеет значение УКАЗАНИЕ. тогда имя сегмента и идентификатор указания должны удовлетворять следующим правилам:

1)    сегмент существует и его атрибуты ВИДИМОСТЬ и ЧУВСТВИТЕЛЬНОСТЬ К УКАЗАНИЮ установлены:

2)    сегмент присутствует на графической станции, содержащей устройство УКАЗАНИЯ;

3)    значение идентификатора указания является значением атрибута идентификатора указания, по крайней мере, одного из примитивов вывода сегмента. Это проверяется с использованием параметров отсечения, действующих в момент поступления примнти-ьа вывода на сганцню. Часть примитива должна находиться внутри окна станции и, если отсечение было включено, часть примитива должна попадать внутрь прямоугольника отсечения примитива. Кроме того, примитив не должен быть полностью перекрыт примитивами сегментов с более высоким приоритетом.

2 8.4.8. Перед началом процесса измерения для устройства УКАЗАНИЯ начальное значение этого устройства проверяется на соответствие вышеописанным правилам. Если эти правила не выполняются, то в качестве состояния процесса измерения устанавливается значение НЕТ УКАЗАНИЯ-

Примечания:

I. Для некоторых трафичосхих станций проверка начальных значений -устройства УКАЗАНИЕ иа соответствие п. -2.в.4 7 (правило 3) и ио**сит зг«пускз процесса измерении может быть очень дорогой. В этих случаях начальные значения необходимо проверять только на соответствие правилам 1 и 2.

Ч. Измерение устройствз УКАЗАНИЯ определено с использованием свойств примитивов вывода и сетасятоо. Устройства УКАЗАНИЯ существуют толимо в составе графических станций ввода-вывода.

2.8.49. Измерением устройства ВВОДА СТРОКИ являются значения входных данных, представляющих собой цепочки литер, максимальная длина которых зависит от устройства и определяется значением размера буфера, содержащимся в записи данных в таблице состояния станции.

2.8 5. Очередь событий и текущий отчет о событии

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

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

Страница 61

С. 58 ГОСТ 27817-88 (СТ СЭВ 6177-88)

ТИЕ. Отчеты о событиях могут быть удалены из очереди событий путем обращения к функциям ОЖИДАТЬ СОБЫТИЕ. УДАЛИТЬ СОБЫТИЯ ОТ УСТРОЙСТВА и ЗАКРЫТЬ СТАНЦИЮ.

2.8.5.3.    При срабатывании фиксатора, являющегося часть» одного или нескольких логических устройств ввода, находящихся в режиме СОБЫТИЕ, результирующие отчеты о событиях включаются в очередь событий и отмечаются кап группа отчетов об одновременных событиях. Отчет о событии добавляется в очередь событий только в том случае, если в иен есть место для всей группы отчетов об одновременных событиях.

Порядок отчетов об одновременных событиях внутри группы не определен.

2.8.5.4.    Если в момент срабатывания фиксатора в очереди событий отсутствует место для всех отчетов об одновременных событиях. то возникает переполнение опереди событий. Информация о переполнении очереди событий не посылается прикладной программе немедленно. Она будет передана через механизм обработки ошибок при следующем обращении к любой из функций ЯГС, которая может удалять отчеты о событиях из очереди событий (ОЖИДАТЬ СОБЫТИЕ. УДАЛИТЬ СОБЫТИЯ ОТ УСТРОЙСТВА и ЗАКРЫТЬ СТАНЦИЮ). Очередь событий должна быть очищена перед добавлением d нее последующих отчетов о событиях. Между моментом обнаружения переполнения входной очереди и следующим обращением к функции ОЖИДАТЬ СОБЫТИЕ с пустой очередью событий при срабатывании фиксатора не генерируется никаких событий и, следовательно, не выдается никаких оповещений. Это позволяет прикладной программе определить, сколько событий было в очереди в момент возникновения переполнения, путем вызова функции ОЖИДАТЬ СОБЫТИЕ с нулевым временем ожидания.

2.8.5.5.    При поступлении сообщения об ошибке «переполнение очереди событий» фиксатор, вызвавший переполнение, отмечается путем помещения в список ошибочных состояний идентификатора какого-либо из логических устройств ввода, использующих этот фиксатор и находящихся в режиме СОБЫТИЕ во время обнаружения переполнения.

2.8.5.6.    Если очередь событий не пуста, то функция ОЖИДАТЬ СОБЫТИЕ удаляет из очереди первый отчет о событии после копирования значения входных данных в текущий отчет о событии в таблице состояния ЯГС. Идентификатор станции, класс устройства ввода и номер устройства передаются прикладной программе непосредственно функцией ОЖИДАТЬ СОБЫТИЕ. Если очередь пуста, то функция ОЖИДАТЬ СОБЫТИЕ приостанавливает вычисления до тех пор, пока в очереди не появится отчет о событии, или не пройдет заданное время ожидания.

Страница 62

ГОСТ 27SI7—as (СТ СЭВ 6177—SS) С 39

2.8.5.7.    Прикладная программа может получить содержимое текущего отчета о событии путем вызова соответствующей функции ПОЛУЧИТЬ ДАННЫЕ <класс устройств ввода>.

2.8.5.8.    Если после удаления отчета о событии в очереди событий остались другие отчеты из той же группы одновременных событий, что и удаленный отчет, то в таблице состояния Я ГС в поле «наличие одновременных событий» устанавливается значение ЕСТЬ. В противном случае устанавливается значение НЕТ.

2.8.5.9.    При обращении к функции УДАЛИТЬ СОБЫТИЯ ОТ УСТРОЙСТВА из очереди событий удаляются все отчеты о событиях, поступившие от конкретного устройства. Функция ЗАКРЫТЬ СТАНЦИЮ удаляет из очереди событий все отчеты о событиях, поступивших от всех логических устройств ввода этой станции.

2.8.5.10.    Если в момент обращения к функции УДАЛИТЬ СОБЫТИЯ ОТ УСТРОЙСТВА или к функции ЗАКРЫТЬ СТАНЦИЮ поле «признак наличия одновременных событий* имеет значение ЕСТЬ и в результате этого обращения удаляются все оставшиеся отчеты из группы отчетов об одновременных событиях из головной части очереди, то в указанном пате устанавливается значение НЕТ.

2.8.6. Инициализация устройств ввода

2.8.6.1. Для каждого класса устройств ввода существует функция ИНИЦИАЛИЗИРОВАТЬ, к которой можно обращаться только ■ том случае, если данное логическое устройство ввода находится в режиме ЗАПРОС. Эти функции передают устройству через таблицу состояния станции следующую информацию (если не было обращения к функции ИНИЦИАЛИЗИРОВАТЬ, то используются значения, установленные по умолчанию):

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

тип подсказки и эха, который определяет способ вывода сообщения с подсказкой (если эхо включено) для логического устройства ввода. Тип подсказки и эха. зависящий от реализации (тип I). должен быть определен для всех логических устройств ввода. Могут быть определены н другие, необязательные, типы подсказки и эха для каждого класса устройств ввода. Эти дополнительные типы перечисляются в соответствующей функции ИНИЦИАЛИЗИРОВАТЬ. Типи подсказки или эха с отрицательным номером зависят от реализации, а с номером большим, чем указано в функции. резервируются для будущей стандартизации;

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

блок данных. Для некоторых классов устройств ввода блок дан-

Страница 63

С. 60 ГОСТ 27817—S8 (СТ СЭВ 6177—88)

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

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

2.8.6.3.    Когда логическое устройство ввода находится в режиме ЗАПРОС и следует обращение к функции ЗАПРОСИТЬ или когда логическое устройство переводится в режимы ОПРОС или СОБЫТИЕ, его измерение устанавливается равным начальному значению из таблицы состояния графической станции, если это значение допустимо для данного устройства. Если это не так. то измерение устанавливается равным значению, зависящему от устройства; исключением являются устройства УКАЗАНИЯ, для которых измерение устанавливается равным значению НЕТ УКАЗАНИЯ.

2.8.6.4.    Тип подсказки и эха задает способ отображения, информирующий оператора о том. что устройство доступно, и эха, информирующего о текущем состоянии измерения. Функции, предназначенные для контроля режима работы устройств ввода ЗАДАТЬ РЕЖИМ <класс устройств ввода>, управляют также включением и выключением эха. Кроме того, должно быть обеспечено зависящее от реализации оповещение о срабатываниях фиксатора.

28.6.5. Следующие элементы в блоке данных являются обяза-1ельными: для устройства ввода последовательности позиций — размер буфера входных данных, выраженный в количестве точек; для устройства ВВОДА ЧИСЛА — нижняя и верхняя границы допустимых значений, для устройства ВВОДА СТРОКИ — размер буфера входных данных и начальная позиция курсора; для устройства ВЫБОРА АЛЬТЕРНАТИВЫ — значения типов подсказки и эха с номерами 2. 3, 4 и 5.

2.9. Интерфейс ЯГС с метафайлом 2.9.1. Для долговременного хранения графической информации в ЯГС предусмотрен интерфейс с последовательны Mil файлами, называемыми метафайлами ЯГС. Они могут использоваться для: передачи графической информации между системами; переноса графической информации из одного места в другое (например при помощи магнитной ленты);

передачи графической информации между прикладными программами. использующими ЯГС;

Страница 64

ГОСТ 27817—(СТ СЭВ 6177—85) С 61

хранения сопровождающей неграфической информации.

Описание метафайла приведено в приложении 7.

2.9.2.    Устройства ввода-вывода метафайла рассматриваются как графические станции типа МВЫВОД и МВВОД. К этим станциям, однако, неприменимы некоторые функции управления и справочные функции.

2.9.3.    Прикладная программа заносит данные в метафайл с помощью функции ЗАПИСАТЬ В МЕТАФАЙЛ.

2.9.4.    Для чтения и интерпретации записей метафайла применяются функции: ПОЛУЧИТЬ ТИП ЗАПИСИ ИЗ МЕТАФАЙЛА. СЧИТАТЬ ЗАПИСЬ ИЗ МЕТАФАЙЛА, ИНТЕРПРЕТИРОВАТЬ ЗАПИСЬ. Предполагается, что метафайл состоит из последовательности записей, каждая из которых включает: тип записи, длину блока данных и сам блок данных. Тип записи определяет, может ли запись быть интерпретирована Я ГС либо ее занесла прикладная программа функцией ЗАПИСАТЬ В МЕТАФАЙЛ.

После открытия станции МВВОД первая запись метафайла становится текущей.

2.9.5.    Функция ПОЛУЧИТЬ ТИП ЗАПИСИ ИЗ МЕТАФАЙЛА извлекает гни записи н длину блока данных текущей записи.

2.9.6.    Функция СЧИТАТЬ ЗАПИСЬ ИЗ МЕТАФАЙЛА копирует содержимое блока данных текущей записи в область, предоставленную прикладной программой, и делает текущей следующую запись метафайла.

2.9.7.    Функция ИНТЕРПРЕТИРОВАТЬ ЗАПИСЬ работает с содержимым блока данных, представленных прикладной программой (в том виде, в котором оно было получено с помощью функции СЧИТАТЬ ЗАПИСЬ ИЗ МЕТАФАЙЛА) Она производит необходимые нзмененля состояния Я ГС, генерирует графический выход в соответствии с содержимым записи. Интерпретация информации об атрибутах примитивов, прямоугольнике 01сечення. инди-каторе отсечения вызывает изменения в таблице состояния Я ГС. Информация о геометрических атрибутах, выраженная в нормированных координатах, преобразуется с помощью преобразования, обратного текущему преобразованию нормирования, а затем заносится в таблицу состояния Я ГС. Информация, относящаяся к функциям управления станцией, может быть интерпретирована на всех графических станциях.

Для сохранения целостности файлов занесение данных в метафайл и счнтысанне из метафайла должны выполняться только под управлением Я ГС. На черт. 12 показана взаимосвязь между прикладной программой, ЯГС к метафайлом.

2.10. У ровни ЯГС

2.10.1.    Введение с у ровни

2.10.1.1.    Система ЯГС предназначена для использования в широком диапазоне применений от простого вывода на графопостро-

Страница 65

С. 62 ГОСТ 27817-88 (СТ СЭВ GI77-88)

Сеть между ЯГС и МЯГС

ПРИКЛАДНАЯ ПРОГРАММА

Запись в МЯГС

Г рсфхческис

Зап.чм

польэс-

сатсл*

Черт. 12

И1 МЯГС

3*гмси

топмо-

а»т«л*

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

2.10.2. Структура уровней

2.10.2.1.    Функциональные возможности ЯГС подразделяются н» следующие основные группы:

вывод — минимальное исполнение, полное исполнение; ввод—ввод отсутствует, ввод и режиме ЗАПРОС, синхронный ввод, полный ввод;

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

сегментация — отсутствует, базовзя сегментация (без общей памяти сегментов), полная сегментация.

2.10.2.2.    Если при реализации ЯГС допустить произвольную комбинацию возможностей, то скоро появится почти неограниченное число различных диалектов стандарта и станет невозможным сохрзннть программную совместимость — одну из основных целей настоящего стандарта. В связи с этим было определено девять допустимых уровнен реализации ЯГС, позволяющих охватить большую часть существующего оборудования и приложений. Каждая реализация ЯГС обеспечивает функции одного уровня. Реа-

Страница 66

ГОСТ 27817-88 (СТ СЭВ 8177-88) С. 63

лнзация ЯГС считается некорректной, если она находится между двумя уровнями.

2.10.2.3.    Уровневая структура ЯГС имеет два независимых компонента: «ввод» и все другие функции, объединяемые под общим названием «вывод».

Имеется четыре уровня вывода:

уровень ш — минимальный вывод;

уровень 0 — все примитивы и атрибуты;

уровень 1 — базовая сегментация с полным выводом;

уровень 2 — общая память сегментов.

Имеется три уровня ввода: уровень а — отсутствие ввода; уровень b — ввод в режиме ЗАПРОС; уровень с — полный ввод.

2.10.2.4.    Возможности ЯГС определяются набором доступных функций и диапазоном изменения их параметров. На каждом уровне существуют три категории возможностей:

явно определенные и обязательные возможности — поддерживаются всеми реализациями ЯГС данного уровня;

явно определенные, но необязательные возможности — если реализация поддерживает эти возможности, то они соответствуют определениям функций ЯГС;

концептуально определенные и необязательные возможности — реализация ЯГС может содержать эти возможности в соответствии с общими правилами и концепциями ЯГС.

2.10.2.5 Набор явно определенных и обязательных возможностей включает:

предварительно определенное число связок вплоть до требуемого номера;

типы линии — от 1 до 4; типы маркеров — от 1 до 5;

точность представления текста ДО ШТРИХА (уровни вывода 1 н 2);

вид заполнения — ПУСТО;

одно устройство ввода каждого класса (уровни ввода b и с); тип подсказки и эха - 1 (уровни ввода b и с).

2.10.2.6. Набор явно определенных, но необязательных возможностей включает:

точность текста ДО ШТРИХА (уровень вывода ш и 0); виды заполнения — ЗАЛИВКА, ПО ШАБЛОНУ. ШТРИХОВКА;

преобразуемые шаблоны;

приоритет сегментов (уровни вывода I и 2);

типы подсказки и эха с номерами больше I, определенные в настоящем стандарте (уровни ввода b и с).

Страница 67

С. 64 ТОСТ ?78!Т—88 (СТ СЭВ CJ77—S8)

2.10.2.7.    Набор концептуально определенных н необязательных возможностей включает:

типы линий больше 4;

типы маркеров больше 5;

обобщенные примитивы вывода;

типы подсказки и эха сверх определенных в настоящем стандарте (уровни ввода b и с) ;

функции расширения.

2.10.2.7.    Явно определенные; ко необязательные возможности-некоторого уровня становятся явно определенным!! и обязательными на более высоком уровне Я ГС при расширении диапазона изменения параметров. Каждый уровень ЯГС содержит только те функции. которые явно определены п обязательны для этого уровня. Однако диапазоны изменения значений параметров могут содержать дополнительные явно определенные и необязательные, а также концептуально определенные и необязательные возможности.

2.10.3. Уровни функциональности

2.10.3.1.    Каждый уровень содержит следующие средства:

Характеристики уровня выводз «т» — минимальный вывод:

1)    ограниченный набор управляющих функций;

2)    ограниченный набор примитивов;

3)    ограниченный набор управляющих атрибутов;

4)    не существует связок и атрибутов;

5)    возможно изменение представления цвета;

6)    в каждый момент времени доступна только одна станция, обладающая возможностями вывода;

7)    допускается преобразование нормирования 0 и только одно устанавливаемое преобразование нормирования;

8)    ограниченный набор справочных функций.

2.10.3.2.    Характеристики уровня вывода «0» (все примитивы и атрибуты):

1)    все возможности уровня вывода «т»;

2)    базовые средства управления;

3)    все примитивы, по крайней мере, в минимальном исполнении;

4)    предварительно определенные связки (изменение связок невозможно):

5)    изменение представления цвета;

6)    з каждый момент доступна лишь одна станция вывода;

7)    метафайл не обязателен, но если он имеется, необходимы средства как ввода, так и вывода;

8)    несколько преобразований нормирования, однако, допустимо иметь преобразование 0 и еще одно устанавливаемое преобразование;

9)    базовые справочные функции;

Страница 68

ГОСТ 27817-88 (СТ СЭВ 6177- 88) С. US

10) обеспечено считывание пикселей (устройства, на которых пикселей нет, выдают сообщение об ошибке).

2.10.3.3.    Характеристики уровня вывода «1» (базовая сегментация с полным выводом):

!) все возможности уровня О;

2)    полный набор функций управления станцией;

3)    полный набор средств вывода;

4)    полная реализация концепции связок;

5)    несколько графических-станций;

6)    станции ввода-вывода метафайла;

7)    несколько устанавливаемых преобразований нормирования;

8)    базовая сегментация (отсутствует общая память сегментов);

9)    соответствующие справочные функции.

2.10.3.4.    Характеристики уровня вывода «2» (общая память сегментов):

1)    все возможные уровни вывода «!»;

2)    общая память сегментов.

2.10.3.5.    Характеристики уровня ввода «а» (отсутствие ввода):

средств ввода нет.

2.10.3.6.    Характеристики уровня ввода «1>» (ввод н режиме ЗАПРОС — синхронный ввод):

функции инициализации устройств ввода и задания режима их работы;

функции ЗАПРОСИТЬ для всех соответствующих устройств;

соответствующие логические устройства ввода включают устройство УКАЗАНИЯ только в комбинации с возможностями уровня вывода «!»;

функция установки входного приоритета вывода.

2.10.3.7.    Характеристики уровня ввода «с» (полный ввод):

все возможности уровня ввода «Ь»;

режимы ОПРОС и СОБЫТИЕ.

2.10.3.8.    В табл. 2 приведен перечень функциональных возможностей каждого допустимого уровня Я ГС. В каждом поле содержатся функции, которые добавляются к функциям, описанным в предыдущих полях той же строки и столбца.

Допустимые различия в реализациях ЯГС, связанные с различными функциональными возможностями, приведены в приложении 6.

Страница 69

С. 66 ГОСТ 27817-88 (СТ СЭВ «177-88)

Таблица 2

Концепция уровней Я ГС

й

Уровень звэда

2 а

- г*

д с о *

>.*

л

о

ш

Нет ввоза, минимальные средства управления, только индивидуально устанавливаемые атрибуты, одно усталая-ливаемое преобразование нормирования. ограниченный набор функций вывода к атрибутов

Ввод данных в режиме ЗАПРОС, функции установки режима работы инициализации для логических устройств ввода, отсутствие устройства указания

Ввод данных в режимах ОПРОС н СОБЫТИЕ, отсутствие устройства указания

0

Отсутствие ввода, базовые средства управления, только предварительно определен ные связки;

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

Ввод данных в режимах ЗАПРОС функции инициализация и установки режима работы для логических устройств ввода, отсутствие режима УКАЗАНИЕ н функции установхи входного приоритета по-ля выиода

Ввод данных в режиме ОПРОС и СОБЫТИЕ; отсутствие выбора элементов

1

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

Функция ЗА ПРО-СИТЬ УКАЗАНИЕ, функции инициализации и установки режима работы для устройства УКАЗАНИЯ

Ввод данных а режиме ОПРОС и СОБЫТИЕ для устройства УКАЗАНИЯ

2

Общая лзмяп. сегментов

2.10.3.9. На различных уровнях число обязательных возможностей может быть различным. Минимальные характеристики, которые должны обеспечивать уровни ЯГС, приведены в табл. 3. Число 0 указывает определенную, но необязательную на данном уровне возможность. Прочерк означает, что соответствующая функция на данном уровне не определена.

Страница 70

ГОСТ 27Я17--88 (СТ СЭв 6177-88) С. 67

Таблица а

Минимальные возможности, необходимые mt каждом уровне ЯГС

Уровень

Вошожноеть

т»

mb

тс

Се

с ь

Ос

U

Количество цветов

1

1 1

1

1

1

1

I

1

1

I

1

(ИИГ€ИСМВ1И>СТСЙ)

1

Типы линий

4

4

4

4

4

4

4

4

4

4

4

4

Ширина линий

1

1

1

1

1

1

1

1

1

Предварительно опре

деленные связки лома

ной

5

5

5

5

5

5

5

5

Ь

Устанавливаемые

связки

--

20

20

20

20

20

.20

Типы маркера

5

5

5

5

5

Б

5

5

1

5

1

5

5

S

Размеры маркера

1

1

1

1

1

1

1

Предварительно оп

ределенные связки IX»

5

лимаркера

5

5

5

5

5

5

5

&■

Устанавливаемые

связки полимаркера

20

20

20

20

20

ломаной

1

20

Высота литеры

I

1

1

I

1

1

1

1

1

1

У

Масштабы расишре

1

I

1

1

1

1

I

»

ния литеры

—•

1

Шрифты точности

1

1

1

1

1

1

1

1

ДО СТРОКИ

t

1

!

ь

Шрифты точности ДО ЛИТЕРЫ

_

I

1

1

1

1

I

1

1

1

Шрифты точности

ДО ШТРИХА

-

0

0

0

2

2

2

2

2

2

Предварительно опре

6

деленные связки текста

2

2

2

6

6

6

6

&

Устанавливаемые

связки текста

20

20

20

20

20

20-

Предварительно опре

I

1

1

1

1

1

1

1

1

деленные шаблоны

—■

Устанавливаемые

10

10

шаблоны

10

10

10

10

Типы штриховки

3

3

3

3

3

3

3

3

3

Предварительно опре

деленные связки поли

гональной области

5

5

5

5

5

5

5

5

5-

Устанавливаемые

связи полигональной

10

•10

10*

области

10

10

10

Устанавливаемые пре

образования нормиро

1

1

1

1

1

10

10

10

10

10

10-

вания

1

Приоритеты сегмен

тов

2

2

2

2

2

2-

Страница 71

С 68 ГОСТ 27817—RK (СТ СЭВ 6177—88)

Продолжение табл. 3

У роиснь

0ОЭМОЖКОСТГ.

m

mb

IPC

«■

Ос

Зс

Классы устройств к и ода

5

5

5

5

б

6

6

6

Типы подсхазки к 9хе па устройство

I

1

_

1

1

..

1

1

__

1

1

Длина входной очерс ЛИ

20

__

20

20

20

Максимальный размер буфера для устройства ввода строки (в литерах)

72

72

72

72

7 2

72

72

72

Максимальный размер буфера для устройство ввода последовательности позиций (в точках) Число станций вывода или ввода вывода

1

<4

I

64

1

1

U

1

64

1

1

<54

1

64

1

1

64

1

64

1

Число станций ввода или ввода-вывода

_

1

1

1

1

1

1

_

1

1

Общая память сегментов

...

_

. ,,

_

1

1

1

Станции вывода метафайла

# _

0

0

0

1

1

1

1

1

1

Станции ввода метафайла

-

0

0

0

1

t

1

t

1

1

Примечание. Данные табл. 3 справедливы:

I Для ?екста точности ДО СТРОКИ н ДО ЛИТЕРЫ

2.    Для станций. обеспечивающих заполнение ПО ШАБЛОНУ.

3.    Для erai’uttfi. обеспечивающих заполнение ШТРИХОВКА.

4.    Для станция, обеспечивающих приоритеты сегментов.

5.    В связи с ограниченностью ресурсов и переменным размером записей достижение указанных значений ire всегда возможно.

2.11. Состоя н не ЯГС и справочные функции

2.11.1 Описание состояний

2.11.1.1.    ЯГС может находиться в одном из пяти различных функциональных состояний, приведенных на черт. 13:

I ЯЗК (GKCL) - ЯГС закрыто;

ГЯОГ (GKOP) — ЯГС открыто;

СТОТ (WSOP) — по крайней мере одна станция открыта;

СТЛК (WSAC) — по крайней мере одна станция активна;

СГОТ (SGOP) — сегмент открыт.

2.11.1.2.    Значение функционального состояния содержится в общей статистической переменной, которой до первого обращения к ЯГС присваивается значение ГЯЗК. Многие обращения к функци-

Страница 72

ГОСТ 27817-84 (СТ СЭВ 6!77-SS) С. 69 Во:можпы? переходы между функциональными состояниям»

ЯГС

мкрыто

Закрыть , _ ЯГС

Открыть ЯГС

ЯГС I открыто I

Окры п. пвр«ук> стачано

Активировать ГХфвуЮ Станцию

Закрыть г

акрыть оостяхкпо стамцни»

По кройи*й мер«0Ака станция открыта

Даактнаироеать последнюю станцию


АкгИВИрОЯ4ТЬ ст*ии«ю\ Деактивировать

По кране* несе одна его*' шли активна

Закрыть

сегмент

СТАНЦИЮ

Открыт» С1ЙМДИО Закрыть СТ4МАИЛ

Открыть

с«тм*ит


С»гм«нт

открыт

Открыть станцию Закрыть craratwo

Черт. 13

ям ЯГС допустимы только в определенных функциональных состояниях ЯГС.

2.11.1.3.    Общее состояние ЯГС определяется набором переменных состояния, которые обеспечивают полное описание эффекта функций. Набор переменных состояния подразделяется на:

1)    функциональное состояние;

2)    таблицу состояния ЯГС;

3)    таблицу состояния сегмента для каждого существующего сегмента;

4)    входную очередь;

5)    таблицу состояния станции для каждой открытой станции;

6)    таблицу ошибочных состояний ЯГС.

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

Страница 73

•С. 70 ГОСТ 278I7-8S (СТ СЭВ 6177-88)

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

2.11.1.5. Если во время выполнения какой-нибудь функции ЯГС возникает ошибочная ситуация,.ЯГС вызывает функцию ОБРАБОТАТЬ ОШИБКУ. Во время выполнения этой функции ЯГС находится в состоянии обработки ошибки. В этом состоянии ЯГС допускает выполнение только справочных функций, функции ЗАРЕГИСТРИРОВАТЬ ОШИБКУ и функции АВАРИЙНО ЗАКРЫТЬ ЯГС и не допускает никаких изменений в таблицах состояния, за ■исключением таблицы ошибочных состояний.

2.11.2. Справочные функции

2.11.2.1.    Справочные функции видают значение непосредственно либо получают их из различных таблиц. Типы данных этих значений и значения по умолчанию для полей таблиц приведены в разд. 4.

2.11.2.2.    Справочные функции ЯГС построены таким образом, что прн их выполнении ошибки появиться не могут. Справочные •функции для значений, которые могут быть логически недоступны, -имеют выходной параметр «индикатор ошибки», определяющий, являются ли другие выходные параметры правильными.

Параметр доступности «индикатор ошибки» является целым и в случае, если другие значения не доступны, содержит номер ошибки, который идентифицирует соответствующую ошибку ЯГС. Те же номера ошибок используются и при выполнении других функций ЯГС, поэтому может быть составлен единый список сообщений об ошибках. Если ЯГС не находится в нужном состоянии, то выдается сообщение об ошибке с соответствующим номером, даже «ели имеются другие причины, из-за которых запрашиваемые значения оказываются недоступными. Если эти значения доступны, выдаваемое значение параметра «инднкаюр ошибки» будет равно нулю.

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

2.11.2.4.    Некоторые справочные функции, выбирающие данные «з таблиц состояния станции, имеют входной параметр типа «перечисление», который может принимать следующие значения:

УСТАНОВЛЕННЫЕ — значения выдаются в том виде, в каком они были получены от прикладной программы;

Страница 74

ГОСТ 27817-88 (СТ СЭВ 6177—88) С. 71

РЕАЛИЗОВАННЫЕ — выдаются значения, которые использовались станцией после того, как фактические значения преобразованы в имеющиеся на станции значения.

2.12. Обработка ошибок

2.12.1.    Для каждой функции ЯГС существует фиксированный набор ошибочных ситуаций, каждая из которых будет приводить к вызову функции ОБРАБОТАТЬ ОШИБКУ. Такой механизм контроля ошибок должен присутствовать во всех реализациях ЯГС. Функции ОБРАБОТАТЬ ОШИБКУ обеспечивают интерфейс между ЯГС и прикладной программой. Если функция ОБРАБОТАТЬ ОШИБКУ представлена прикладкой программой, то она можег интерпретировать информацию об ошибке и может запоминать данные в области данных для последующей интерпретации прикладной программы после выхода из функции ЯГС, во время выполнения которой произошла ошибка.

2.12.2.    Стратегия обработки ошибок в ЯГС основана на следующей классификации ошибок:

класс 1 — ошибки, вызывающие точно определенную реакцию;

класс 2 — ошибки, приводящие к попытке сохранить результаты предыдущих операций;

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

ЯГС различает три ситуации, в которых обнаруживаются ошибки:

ситуация А — ошибка обнаружена в функциях ЯГС;

ситуация Б - ошибка обнаружена в функциях, к которым было обращение ЯГС (функции драйверов и операционных систем);

ситуация В — ошибка обнаружена в других частях прикладной программы.

2.12.3.    Если ошибки обнаружены вне ЯГС (ситуация В), то прикладная программа либо снова получает управление для продолжения выполнения программы, либо происходит аварийное завершение программы. В последнем случае результаты работы программы непредсказуемы (класс 3), и в худшем случае вся графическая информация, подготовленная в задаче до этого момента, может быть потеряна. Если же прикладная программа получает управление, она может сделать попытку явно закрыть ЯГС надлежащим образом или, по крайней мере, попытаться аварийно закрыть ЯГС путем обращения к функции АВАРИЙНО ЗАКРЫТЬ ЯГС. Аналогично, если ошибка возникла в функциях, вызываемых из ЯГС, и управление не возвращено в ЯГС надлежащим образом, то результаты также являются непредсказуемыми.

2.12.4.    Функция АВАРИЙНО ЗАКРЫТЬ ЯГС является средством, зависящим от реализации. Ее назначением является сохранение как можно большей части подготовленной графической информации. Ее можно непосредственно вызвать из прикладной прог-3 Зак. 2014

Страница 75

С. 72 ГОСТ 27817—R8 (СТ СЭВ 6177—88)

раммы. Она также вызывается из самого ЯГС в виде стандартно* реакции на ошибки класса 2.

2.12.5. Ошибки, которые явно перечислены в составе описания ЯГС, относятся к классу I ошибок. Эти ошибки либо обнаруживаются внутри самого ЯГС, либо функция, вызванная из ЯГС, передает управление в соответствующую функцию ЯГС вместе с соответствующей информацией об ошибке. Во всех случаях ошибок класса 1 ЯГС обращается к функции ОБРАБОТАТЬ ОШИБКУ. Если при вызове функции ЯГС возникает сразу несколько ошибочных ситуаций, то сообщается по крайней мере об одной из этих ошибок.

2.J2.6. В прикладной программе может иметься собственная программа обработки ошибок или использоваться функция обработки ошибок, предусмотренная в составе ЯГС. Любая функция обработки ошибок получает от ЯГС следующую информацию:

1)    идентификацию ошибки;

2)    идентификацию функции ЯГС, которая вызвала функцию-ОБРАБОТАТЬ ОШИБКУ;

3)    файл ошибок.

2.12.7. Функция ОБРАБОТАТЬ ОШИБКУ, входящая в состав-ЯГС, фактически только обращается к функции ЗАРЕГИСТРИРОВАТЬ ошибку с тем же самым набором параметров. Последняя функция выполняет следующие действия:

1)    записывает сообщение об ошибке и идентификатор функции ЯГС в файл ошибок;

2)    возвращает управление вызывающей программе.

Вызов функций обработки ошибок в два этапа позволяет реализовать в прикладной программе свою собственную функцию ОБРАБОТАТЬ ОШИБКУ и в то же время сохранить доступ к сервисным возможностям, предоставляемым функцией ЗАРЕГИСТРИРОВАТЬ ОШИБКУ, как это можно видеть из следующего примера прикладной программы, содержащей функцию ОБРАБОТАТЬ ОШИБКУ:

ОБРАБОТАТЬ ОШИБКУ (номер ошибки, идентификатор функции ЯГС. файл ошибок);

произвести идентификацию функции ЯГС и ошибки для того, чтобы различить следующие варианты: вариант «специальная обработка»:

интерпретировать параметры ошибки, переданные из ЯГС; сохранить информацию для прикладной программы в указанной ею области данных;

возвратить управление в вызывавшую функцию ЯГС; вариант «стандартная обработка»:

вызвать функцию ЗАРЕГИСТРИРОВАТЬ ОШИБКУ со всем» выше перечисленными параметрами;

возвратить управление вызвавшей функции ЯГС.

Страница 76

ГОСТ 27817—S8 (СТ СЭВ 6177—8$) С. 73

КОНЕЦ.

2.12.8.    Все функции ЯГС при обнаружении ошибки выполняют следующие действия:

1)    устанавливают состояние ошибки в положение ВЫКЛЮЧЕНО;

2)    вызывают функцию ОБРАБОТАТЬ ОШИБКУ с соответствующими параметрами;

3)    устанавливают состояние ошибки в положение ВЫКЛЮЧЕНО;

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

2.12.9.    Все функции ЯГС перед началом работы должны производить следующие проверки (в указанном порядке):

1)    находится ли ЯГС в нужном состоянии;

2)    правильно ли заданы входные параметры.

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

2.12.10.    Прикладная программа, обладающая собственной функцией ОБРАБОТАТЬ ОШИБКУ, имеет доступ к набору переменных, описывающих состояние ЯГС. Однако в процессе обработки ошибки нельзя модифицировать состояние ЯГС, то есть из прикладной программы, имеющей собственную функцию ОБРАБОТАТЬ ОШИБКУ, допустимо обращение только к справочным функциям. функции ЗАРЕГИСТРИРОВАТЬ ОШИБКУ и функции АВАРИЙНО ЗАКРЫТЬ ЯГС. Это достигается путем установки состояния ошибки в положение ВКЛЮЧЕНО до обращения из ЯГС к функции ОБРАБОТАТЬ ОШИБКУ н установки состояния ошибки в положение ВЫКЛЮЧЕНО сразу после вызова этой функции.

2.12.11.    Список ошибок ЯГС приведен в приложении 4. Справочные функции не могут вызывать ошибки.

2.13. Специальный интерфейс между ЯГС и прикладной программой

2.13.1.    В ЯГС предусмотрен унифицированный механизм расширения для обеспечения доступа к специфическим особенностям оборудования («стандартный способ выполнения нестандартных действий»). Он реализован с помощью функции РАСШИРЕНИЕ.

2.13.2.    Функцию РАСШИРЕНИЕ не следует использовать для генерации геометрических выходных данных. Для этих целей лучше воспользоваться функцией ОБОБЩЕННЫЙ ПРИМИТИВ ВЫВОДА, которая предназначена для генерации геометрических выходных данных, не обеспечиваемых ЯГС.

•3’

Страница 77

С. 74 ГОСТ 27817-88 (СТ СЭВ 6177—88)

3. ФУНКЦИИ ЯГС

3.1.    Правила описания функций

3.1.1.    Заголовок описания каждой функции должен содержать;

название функции;

состояния ЯГС, в которых функция может использоваться, исключая состояния для справочных функций (см. п. 3.9), для них указываются только те состояния, н которые справочные функции могут возвратить заданные правильные значения;

самый низкий уровень ЯГС, на котором данная функция явно определена и является обязательной.

3.1.2.    В списке параметров для каждого параметра указывается следующая информация:

является ли параметр входным (вх) или выходным (вых);

название параметра;

для координат — система координат (МК, НК. КУ). используемая прн вызове функции;

разрешенные значения для данных типа «перечисление» или любые ограничения на диапазон изменения значений для целых » действительных данных (например >0);

тип данных:

Ц — целые значения; Д — действительные значения; С — символьные значения; Т — точка; И — имя; П — перечисленные значения. Тип данных может иметь составную форму, в основе которой лежит одна или несколько простых форм (например ПхТ), ил» составную форму типа 0 — общие значения записи данных.

Список функций ЯГС приведен в Приложении 3.

3.2.    Функции управления

3.2.1. ОТКРЫТЬ ЯГС

ГЯЗК Уровень та;

OPEN GKS.

Параметры:

Вх файл ошибок    И;

Вх количество единиц памяти для буферной области    Ц.

Действие:

ЯГС переводится в функциональное состояние ГЯОТ — «ЯГС открыто». Отводится и подготавливается таблица состояния ЯГС. Делаются доступными таблица описания ЯГС и таблицы описания графических станций. В поле «файл ошибок» таблицы ошибок ЯГС заносится значение, заданное первым параметром. Ограничивается допустимая область буферной памяти, которая может использоваться для внутренних целей ЯГС.

Примечание. Некоторые среды могут ее обеспечивать диигмичсское управление памятью. В этом случае размер буферной памяти может бить огр»-внчен статическим способом, который должен быть описан в документации по реализации.

Страница 78

ГОСТ 27817-88 (СТ СЭВ 6177—88) С. 75

Описание функции в соответствии с подразд. 2.11, 2.12.

Ошибки:

1 ЯГС не находится в состоянии ГЯЗК;

200 Неверно задан указанный файл ошибок.

3.2.2.    ЗАКРЫТЬ ЯГС

ГЯОТ Уровень maj

CLOSE GKS.

Параметры:

Нет.

Действие:

ЯГС переводится в функциональное состояние ГЯЗК — «ЯГС закрытое Таблица описания ЯГС, таблица состояния ЯГС. Таблицы описания станций становятся недоступными. Вся буферная память ЯГС освобождается и закрываются все файлы ЯГС.

Примечание. ЯГС может выть открыто вновь обращением к фуящп ОТКРЫТЬ яге.

Описание функции в соответствии с подразд. 2.11, 2.12.

Ошибки:

2 ЯГС не находится в состоянии ГЯОТ.

3.2.3.    ОТКРЫТЬ СТАНЦИЮ

ГЯОТ, СТОТ, СТЛК, СГОТ Уровень та»

OPEN WORKSTATION.

Параметры:

Вх идентификатор станции    И;

Вх идентификатор связи    И}

Вх тип станции    И.

Действие:

Если ЯГС находится в функциональном состоянии ГЯОТ. то оно будет переведено в состояние СТОТ.

ЯГС запрашивает операционную систему о выполнении указанного соединения со станцией, с характеристиками, заданными в таблице описания станции, доступ к которой осуществляется с помощью параметра «тип станции». Выделяется память и подготавливается таблица состояния станции. Идентификатор станции добавляется п набор открытых станций в таблице состояния ЯГС. Функция ОТКРЫТЬ СТАНЦИЮ проверяет, очищен ли носитель изображения, но без необходимости не очищает его.

Примечания:

1.    Идентификатор свази задастся в форме, соответствующей языку программирования прикладной программы (например «номер устройства» для я-jm» ка Фортран или «идентификатор файла» для PL/1).

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

Описание функции в соответствии с пп. 2.5.2; 2.11.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

Страница 79

С 76 ГОСТ 27817-88 (СТ СЭВ 6177-88)

20    Неверно задан идентификатор станции;

21    Неверно задан идентификатор связи;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

24    Указанная станция уже открыта;

26 Указанная станция не может быть открыта;

28    Общая память сегментов уже открыта;

42 Число одновременно открытых станций превышает допустимое.

3.2.4.    ЗАКРЫТЬ СТАНЦИЮ

СТОТ, СТАК, С ГОТ Уровень та:

CLOSE WORKSTATION.

Параметры:

И.

Действие:

Неявно заданная функция ОБНОВИТЬ ИЗОБРАЖЕНИЕ НА СТАНЦИИ (с параметром флаг повторной генерации, установленным в состояние ВЫПОЛНИТЬ) выполняется для указанной станции; освобождается таблица состояния станции. Идентификатор станции удаляется из набора открытых станций в таблице состояния ЯГС и из набора связанных с сегментом станций в таблице состояния сегмента для каждого сегмента, содержащего идентификатор данной станции в наборе связанных с ним станций. Сегмент удаляется, если набор связанных с ним станций становится пуст. Очередь событий очищается от всех событий, источниками которых были устройства, входящие в состав закрываемой станции. Если поле «идентификатор устройства ввода, вызвавшего переполнение очереди событий» в таблице ошибок ЯГС ссылается на идентификатор этой станции, то содержимое этого поля становится неопределенным.

Связь со станцией разрушается. ЯГС переводится в состояние ГЯОТ, если нет больше открытых станций. Очищение носителя изображения не обязательно, но возможно.

Описание функции в соответствии с пп. 2.5.2; 2.8.5; 2.11.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25    Указанная станция не открыта;

29    Указанная станция активна;

147 Очередь событий переполнена.

3.2.5.    АКТИВИРОВАТЬ СТАНЦИЮ

СТОТ, СТАК Уровень та:

ACTIVITE WORKSTATION.

Параметры:

Вх идентификатор станции    И.

Действие:

Страница 80

ГОСТ 27817-88 (СТ СЭВ GI77—8в) С. 77

ЯГС переводится в состояние СТАК — «по крайней мере одна станция открыта». Указанная станция отмечается как активная в таблице состояния станции. Идентификатор станции добавляется в набор активных станций в таблице состояния ЯГС.

Примечание. Во все а*тэ»вные станции посылаются выходные примитивы и запоминаются сегменты.

Описание функции в соответствии с пп. 2.5.2; 2.11.

Ошибки:

6 ЯГС не находится в состоянии СТОТ или СТАК;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

29    Указанная станция активна;

33 Указанная станция — станция ввода метафайла ЯГС;

35 Указанная станция является станцией ввода;

43 Число одновременно активных станций превышает допустимое.

3.2.6.    ДЕАКТИВИРОВАТЬ СТАНЦИЮ

СТАК Уровень та:

DEACTIVITE WORKSTATION.

Параметры:

И.

Действие:

Указанная станция переводится в состояние «неактивна». Идентификатор станции удаляется из набора активных станций в таблице состояния ЯГС. Если больше не остается активных станций, ЯГС переводится в состояние СТОТ — «по крайней мере одна станция открыта».

Примем а им е. На данную станцию больше не будут посылаться примитивы вывода и новые сегменты не будут запоминаться на этой станции. Ранее сохраненные «а станции сегмеитм остаются.

Описание функции в соответствии с пп. 2.5.2; 2.11.

Ошибки:

3 ЯГС не находится в состоянии СТАК;

20 Неверно задан идентификатор станции;

30    Указанная станция не активна;

33 Указанная станция — станция ввода метафайла ЯГС;

35 Указанная станция является станцией ввода.

3.2.7.    ОЧИСТИТЬ ИЗОБРАЖЕНИЕ НА СТАНЦИИ

СТОТ. СТАК Уровень mai

CLEAR WORKSTATION.

Параметры:

Вх идентификатор станции    И;

Вх флаг управления (УСЛОВНО. ВСЕГДА)    П.

Действия:

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

В зависимости от значения параметра флаг управления носи*

Страница 81

«, 78 ГОСТ 27817-88 (СТ СЭВ 6177-88)

тель изображения переводится в очищенное состояние следующим образом:

УСЛОВНО — носитель изображения очищается только в том случае, если поле «заполненность носителя изображения» в таблице состояния станции имеет значение НЕ ПУСТ;

ВСЕГДА — носитель изображения очищается всегда.

Если в таблице состояния станции поле «состояние обновления преобразования станции» имеет значение ЗАДЕРЖАНО, то полям «текущее окно станции» и «текущее поле вывода станции» назначаются значения полей «запрошенное окно станции* и «запрошенное поле вывода станции», а п поле «состояние обновления преобразования станции» заносится значение НЕ ЗАДЕРЖАНО.

Для всех сегментов, содержащихся з памяти указанной станции. идентификатор данной станции удаляется из набора связанных с сегментом станций в таблице состояния сегмента. Если набор связанных с сегментом станций становится пустым, сегмент удаляется. Список запомненных на станции сегментов данной станции становится пустым и выполняется функция УДАЛИТЬ СЕГМЕНТ СО СТАНЦИИ для всех сегментов данной станции.

В поле «при обновлении необходим вывод нового кадра» таблицы состояния станции заносится значенне НЕТ.

В поле «заполненность носителя изображения» в таблице состояния станции заносится значение ПУСТ.

Описание функции в соответствии с пп. 2.5.3; 2.5.4; 2.5.5; 2.7.1.

Ошибки:

6 ЯГС не находится и состоянии СТОК или СТАК;

20 Неверию задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35 Указанная станция является станцией ввода.

3.2.8. ПЕРЕРИСОВАТЬ ВСЕ СЕГМЕНТЫ НА СТАНЦИИ

СТОГ. СТАК. СГОТ Уровень 1а

REDRAW ALL SEGMENTS ON WORKSTATION.

Параметры:

Bx идентификатор станции    И.

Действия:

Для указанной станции выполняются все отложенные действия без промежуточной очистки носителя изображения.

Носитель изображения очищается только в том случае, если поле «заполненность носителя изображения» в таблице состояния станции имеет значение НЕ ПУСТ и в поле заносится значенне ПУСТ-

Если в таблице состояний станции поле «состояние обновления преобразования станции» имеет значенне ЗАДЕРЖАНО, то в поля «текущее окно станции» и «текущее поле вывода станции» за-

Страница 82

ГОСТ 27817-88 (СТ СЭВ 6177-88) С 79

носятся значения полей «запрошенное окно станции» и «запрошенное поле вывода станции», а в поле «состояние обновления преобразования станции» заносится значение НЕ ЗАДЕРЖАНО.

Все видимые сегменты, запомненные на этой станции (т. е. содержащиеся в списке запомненных на станции сегментов в таблице состояния станции) отображаются заново. Это действие обычно вы-зывает занесение значения НЕ ПУСТ в поле «заполненность носителя изображения» в таблице состояния станции.

В поле «при обновлении необходим вывод нового кадра» в таблице состояния станции заносится значение НЕТ.

Описание функции в соответствии с пп. 2.5.3; 2.5.4; 2.5.5; 2.7.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является обшей памятью сегментов.

3.2.9. ОБНОВИТЬ ИЗОБРАЖЕНИЕ НА СТАНЦИИ

СТОТ, СТАК, СГОТ Уровень та.

UPDATE WORKSTATION.

Параметры:

Вх идентификатор станции    И;

Вх флаг повторной генерации (ОТЛОЖИТЬ, ВЫПОЛНИТЬ) П.

Действия:

Все отложенные действия для указанной станции выполняются без промежуточной очистки носителя изображения. Если параметр флаг повторной генерации имеет значение ВЫПОЛНИТЬ и поле «при обновлении необходим вывод нового кадра» в таблице состояния станции имеет значение ДА, то в указанной последовательности выполняются следующие действия:

носитель изображения очищается только в том случае, если поле «заполненность носителя изображения» в таблице состояния станции имеет значение НЕ ПУСТ. В поле заносится значение ПУСТ;

если в таблице состояния станции поле «состояние обновления преобразования станции» имеет значение ЗАДЕРЖАНО, то поля «текущее окно станции» и «текущее поле вывода станции» принимают значения полей «запрошенное окно станции» и «запрошенное поле вывода станции», а в поле «состояние обновления преобразования станции» устанавливается значение НЕ ЗАДЕРЖАНО;

все видимые сегменты, запомненные на этой станция (т. е. содержащиеся в списке запомненных на этой станции сегментов, б таблице состояния станции) отображаются заново. Это действие обычно вызывает установку в поле «заполненность носителя изображения» значения НЕ ПУСТ;

Страница 83

С. 80 ГОСТ 27817-88 (СТ СЭВ 6177-88)

в поле «при обновлении необходим вывод нового кадра* в таблице состояния станции устанавливается значение НЕТ.

Примечание. Если параметр флаг повторной генерации имеет значение ВЫПОЛНИТЬ, функция ОБНОВИТЬ ИЗОБРАЖЕНИЕ НА СТАНЦИИ приостанавливает действие функции ЗАДАТЬ СОСТОЯНИЕ ЗАДЕРЖКИ. В отом случае она эквивалентна следующей последовательности фчихдий:

‘ УЗНАТЬ РЕЖИМ ЗАДЕРЖКИ И ОБНОВЛЕНИЯ СТАНЦИИ;

Запомнить состояние задержки;

ЗАДАТЬ РЕЖИМ ЗАДЕРЖКИ (БЫСТРО. РАЗРЕШЕНА);

Задать запомненное состояние задержки.

Если поле «при обновлении необходим вывод нового кадра» имеет значение НЕТ или параметр флаг повторной генерации имеет значение ОТЛОЖИТЬ, то функция ОБНОВИТЬ ИЗОБРАЖЕНИЕ НА СТАНЦИИ запускает пе.рсда* чу сблокированных данных. Если поле «цри обновлении необходим вывод нового кадра» имеет значение ДА н параметр флаг повторной генерации имеет аначение ВЫПОЛНИТЬ, то действия функции ОБНОВИТЬ ИЗОБРАЖЕНИЕ НА СТАНЦИИ идентичны действиям функции ПЕРЕРИСОВАТЬ ВСЕ СЕГМЕНТЫ НА СТАНЦИИ

В процессе генерации отложенных действий паче «при обновлении необходим вывод нового калра» в таблице состояния станции устанавливается в положение ДА, если выполняются следующие два условия:

действие, вызывающее обновление картину откладывается на этой стаивая;

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

Описание функции в соответствии с пп. 2.5.3; 2.5.4; 2.5.5.

Ошибки:

7 ЯГС не находится в состоянии СТОТ. СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов.

3.2.10. ЗАДАТЬ РЕЖИМ ЗАДЕРЖКИ

СТОТ, СТАК, СГОТ Уровень 1а-

SET DEFERRAL STATE.

Параметры:

Вх идентификатор станции    И;

Вх момент обновления (БЫСТРО, ГЛОБ, ЛОК. ЛЮБОЙ) П;

Вх неявная повторная генерация

(РАЗРЕШЕНА, ЗАПРЕЩЕНА) П.

Действие:

Поля «момент обновления» н «режим неявной повторной генерации» таблицы состояния станции принимают заданные значения. В зависимости от нового значения момента обновления отложенные действия могут быть разблокированы. Если новое значение режима неявной повторной генерации РАЗРЕШЕНА, а поле «при обновлении необходим вывод нового кадра» имеет значение

Страница 84

ГОСТ 27817—88 (СТ СЭВ 6177-88) С 81

ДЛ, го выполняются действия, эквивалентные вызову функции ПЕРЕРИСОВАТЬ ВСЕ СЕГМЕНТЫ НА СТАНЦИИ.

Описание функции в соответствии с пп. 2.5.3; 2.5.5.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТЛК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов.

3.2.11.    СООБЩЕНИЕ

СТОТ, СТА К, СГОТ Уровень 1а-

MESSAGE.

Параметры:

Вх идентификатор станции    И;

Вх сообщение    С.

Действие:

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

Таблица состояния ЯГС остается неизменной.

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

Описание функции в соответствии с п. 2.5.6.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ; 20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

36 Указанная станция является общей памятью сегментов.

3.2.12.    РАСШИРЕНИЕ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень та.

ESCAPE.

Параметры:

Вх идентификатор функции расширения    И:

Вх запись входных данных функции расширения    О;

Вых запись выходных данных функции расширения    О.

Действие:

Вызывается указанная нестандартная функция расширения. Формат записи данных функции расширения может быть различным для различных функций. Могут быть введены ограничения на то, в каких состояниях ЯГС разрешает обращение к функции рас-

Страница 85

С. 82 ГОСТ 27817-88 (СТ СЭВ 6177-88)

ширення. При определении попой функции расширения должны соблюдаться следующие правила:

не должны нарушаться концепции проектирования ЯГС;

не должны изменяться таблицы состояния ЯГС;

функция не должна генерировать графических выходных данных;

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

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

Примечание. Примори фукхикй расширения:

поддержка растровых устройсгв, позволяющих отображать более одного буфера жадра;

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

Если в языке программирования идентификатор функции расшнреаня имеет тип ЦЕЛЫЙ, то положительные идентификаторы сохраняются для будущей стзядаргкзацяи, а смысл отрицательных зависит от реализации.

Описание функции в соответствии с подразд. 213.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ. СТАК или С ГОТ;

180 Указанная функция расширения не обеспечена;

18! Идентификатор указанной функции расширения задан неверно;

182 Неверно задано содержимое записи данных функции расширения.

3.3. Функции вывода графических данных

3.3.1. ЛОМАНАЯ

СТАК. СГОТ Уровень та.

POLYLINE.

Параметры:

Вх число точек    (2...п)    Ц;

Вх координаты точек    МК    пхТ.

Действие:

Генерируется последовательность соединенных отрезков. Начало первого отрезка в первой точке. Концами первого и последующих отрезков являются вторая и последующие точки. Текущие значения атрибутов ломаной, заданные в таблице состояния ЯГС, связываются с примитивом.

Если после преобразования станции все точки совпадают, то сообщение об ошибке «е выдается, и то, что вычерчивается, зависит от станции.

Описание функции в соответствии с пп. 2.4.1; 2.4.2; 2 4.3; 2.5.3.

Ошибки:

Страница 86

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 83

5 ЯГС не находится в состоянии СТАК или СГОТ;

100 Неверно задано число точек.

3.3.2. ПОЛИМАРКЕР

СТАК. СГОТ Уровень та.

POLYMARKER.

Параметры:

Вх число точек    (1    .. • п)    Ц|

Вх координаты точек    МК    пХТ.

Действие:

Генерируется последовательность маркеров, которые размешаются в указанных точках. Текущие значения атрибутов полнмар-керг, заданные в таблице состояния ЯГС, связываются с примитивом.

Примечание. Маркер видим тогда, когда его позиция находится впутра прямоугольника отсечения.

Описание функции в соответствии с пп. 2.4.1; 2.4.2; 2.4.4; 2.5.3.

Ошибки:

5 ЯГС не находится в состоянии СТАК или СГОТ;

100    Неверно задано число точек.

3.33. ТЕКСТ

СТАК. СГОТ Уровень та.

TEXT.

Параметры:

Вх позиция текста    МК    Т;

Вх строка литер    С.

Действие:

Генерируется строка литер. Текущие значения атрибутов текста, заданные в таблице состояния ЯГС, связываются с примитивом. Позиция текста задана в мировых коордипатах и преобразуется текущим преобразованием нормирования.

Если после преобразования станции высота или ширина литеры нулевая, то сообщение не выдается, и то, что вычерчивается, зависит от станции.

Если строка литер содержит код управляющего символа, то результат зависит от станции: или выдается ошибка 101, или генерируется некоторый визуальный результат, или код игнорируется. Строка текста выводится на всех активных станциях, которые не выдают ошибку 101.

Примечание, Отсечение текста вьиолняется способом, зависящим от точности представления текста.

Описание функции в соответствии с пп. 2.4.1; 2.4.2; 2.4.5; 2.5-3.

Ошибки:

5 ЯГС не находится в состоянии СТАК или СГОТ;

101    Неверный код литеры.

3.3.4. ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ

СТАК, СГОТ Уровень та.

Страница 87

с. 84 ГОСТ 27817-88 (СТ СЭВ 6177-88)

FILL AREA.

Параметры:

Вх число точек    (З...п)    Ц;

Вх координаты точек    МК    пХТ.

Действие:

Генерируется выходной примитив ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ. Текущие значения атрибутов полигональной области, заданные в таблице состояния ЯГС, связываются с примитивом.

Полигональная область заполняется в соответствии с текущим видом заполнения (заданным через связку полигональной области или индивидуально в зависимости от соответствующего ФВА). Для вида заполнения ПУСТО вычерчивается граница области. При других видах заполнения граница вычерчивается таким образом, чтобы между граничащими областями не было пересечений ил» пропусков.

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

Отсечение примитивов ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ

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

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

От станции зависит, будет или нет получившийся отрезок рассматриваться как часть границы.

Страница 88

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 85

Определение области примитив* ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ

f

При формировании входных данных логического устройства указания примитив ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ с видом заполнения ЗАЛИВКА или ПО ШАБЛОНУ выбирается путем указания точки внутри или на границе многоугольника. Указание точки в отверстии полигональной области не приводит к идентификации этой полигональной области. Примитив ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ с видом заполнения ПУСТО выбирается путем указания точки на границе многоугольника. Примитив ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ с видом заполнения ШТРИХОВКА выбирается путем указания точки на границе многоугольника или на линии штриховки.

Описание функции в соответствии с пп. 2.4.1; 2.4.2; 2.4.6; 2.5.3.

Ошибки:

5 ЯГС не находится в состоянии СТАК или СГОТ;

100 Неверно задано число точек.

3.3.5. МАТРИЦА ЯЧЕЕК

СТАК, СГОТ    Уровень Оа.

МК    2ХТ;

(1...П)    2ХЦ;

(0...п)    пХпХЦ.

CELL ARRAY.

Параметры:

Вх прямоугольник ячеек (Р, Q)

Вх размерности массива индексов цвета Nx, Ny

Вх массив индексов цвета

Действие:

Генерируется примитив МАТРИЦА ЯЧЕЕК с использованием координат углов прямоугольника ячеек и размерностей массива индексов цвета.

Стороны прямоугольника параллельны осям системы мировых координат. Точки Р и Q определяют левый нижний и правый верхний углы прямоугольника. Прямоугольник делится на ячейки. По-

Страница 89

С 86 ГОСТ 27817-88 (СТ СЭВ 6177-88)

лучается сетка, состоящая из (NxXNy) ячеек, где Nx и Ny — раэ-мерности массива индексов цвета. Каждая ячейка имеет ширину |хр—xq 1 /Nx и высоту |ур—yq|/Ny, где (хр, ур) — координаты точки Р, a (xq, yq) — координаты точки Q.

Массив индексов цвета ориентируется по отношению к прямоугольнику следующим образом:

элемент (1, 1) связывается с ячейкой, содержащей р;

элемент (Nx, Ny) связывается с ячейкой, содержащей Q;

элемент (1, Ny) связывается с ячейкой, содержащей точку (Рх,

Qy):

элемент (Nx, I) связывается с ячейкой, содержащей точку (Qx,

РУ);

Цвет каждой ячейки задается значением соответствующего элемента массива индексов цвета. Если значение индекса отсутствует в таблице индексов цвета, то используется зависящее от станции значение.

Прямоугольная сетка, заданная точками Р и Q и числом ячеек Nx и Ny, является объектом преобразований, которые могут преобразовать прямоугольные ячейки в параллелограммы.

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

На черт. 16 указан способ привязки примитива МАТРИЦА ЯЧЕЕК к носителю изображения растрового устройства отображения.

При отображении примитива МАТРИЦА ЯЧЕЕК на нерастровый носитель изображения минимальным требованием является вычерчивание преобразованных границ примитива МАССИВ ЯЧЕЕК с использованием зависящих от реализации цвета, ширины н типа линий.

Если после преобразования станции четыре угловые точки совпадают или лежат на одной прямой, то сообщение об ошибке не выдается и то. что вычерчивается, зависит от станции.

Описание функции в соответствии с пп. 2.4.1; 2.4.2; 2.4.7; 2.5.3.

Ошибки:

5 ЯГС не находится в состоянии СТАК или СГОТ;

91 Неверно заданы размерности массива индексов цвета.

3.3.6. ОБОБЩЕННЫЙ ПРИМИТИВ ВЫВОДА

СТА К, СГОТ Уровень Оа.

GENERALIZED DRAWING PRIMITIVE.

Параметры:

Вх число точек    (0...п)    Ц;

Страница 90

ГОСТ 27817-88 (СТ СЭВ 8177-88) С 87

Привязка примитивов МАТРИЦА ЯЧЕЕК к носителю изображения

Позиции элементов растра на носителе изображения

Примитив МАТРИЦА ЯЧЕЕК NxNv ячеек

Преобразованный примитив МАТРИЦА ЯЧЕЕК

Черт. 16

Вх координаты точек    МК    пХТ;

Вх идентификатор ОПВ    И;

Вх запись данных ОПВ    О.

Действие:

Обобщенный примитив вывода (ОПВ), тип которого указан параметром идентификатор ОПВ, генерируется в соответствии с заданными точками и записью данных ОПВ. С примитивом связываются текущие значения атрибутов ломаной, полимаркера, текста или полигональной области. Какие наборы атрибутов используются для указанной функции ОПВ определено в таблице описания станции.

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

Следующие примитивы могут быть реализованы с помощью ОПВ:

окружность — заданными точками является центр и точка на окружиости;

дуга окружиости — заданными точками являются центр, начальная н копечная точки дуги окружности, которые должны быть соединены в направлении против часовой стрелки;

эллипс — заданными точками являются две фокусные точка и точка эллипса;

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

Страница 91

С. 66 ГОСТ 27817—S8

интерполирующая кривая (например, сплайн) — заданными точками являются интерполируемые точки.

Для приведенных примеров ОПВ рекомендуется использовать атрибуты ломаной.

Точки-параметры ОПВ подвергаются преобразованиям ЯГС. Например ОПВ окружность будет появляться в виде эллипса при различном масштабировании по двум осям. При определении OI1B указывается способ преобразования точек и геометрической формы ОПВ.

Результирующие выходные данные ОПВ отсекаются по границам окна станции и по границам прямоугольника отсечения, если индикатор отсечения имеет значение ОТСЕКАТЬ.

Если ОПВ поддерживается станцией, но не может быть сгенерирован при текущем преобразовании или прямоугольнике отсечения, то выдастся ошибка 105. Запись данных ОПВ может содержать дополнительные данные (например, порядок вершин для сплайнов), которые не подвергаются преобразованиям. Содержимое записи данных должно быть определено для каждого ОПВ. При определении нового ОПВ не должны нарушаться концепции проектирования ЯГС. Набор обобщенных примитивов вывода, реализованных для каждой станции, может быть пустым.

Если идентификатор ОПВ в языке программирования имеет тип ЦЕЛЫЙ, положительные идентификаторы ОПВ резервируются для регистрации или будущей стандартизации, а смысл отрицательных идентификаторов зависит от реализации.

Описание функции в соответствии с пп. 2.4.1; 2.4.2; 2.4.7; 2.5.3; 2.13.

Ошибки:

5 ЯГС не находится в состоянии СТАК или СГОТ;

100 Неверно задано число точек;

102    Неверно задан идентификатор ОПВ;

103    Неверно задано содержимое записи данных OI1B;

104    Ни одна активная станция не может сгенерировать указанный ОПВ;

105    Ни одна активная станция не в состоянии сгенерировать указанный ОПВ при текущих преобразованиях и прямоугольнике.

3.4. Функции задания атрибутов выходных данных

3.4.1.    Функции задания не зависящих от станций атрибутов

3.4.1.1.    ЗАДАТЬ ИНДЕКС ЛОМАНОЙ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень 0а

Параметр:

Вх индекс ломаной    (1    ... п)    Ц.

Действие:

В поле «текущий индекс ломаной» в таблице состояния ЯГС

Страница 92

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 89

заносится значение, заданное параметром ипдекс ломаной. Это значение используется впоследствии для создания выходных примитивов ЛОМАНАЯ.

Описание функции в соответствии с пп. 2.4.2; 2.4.3.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ. СТОТ, СТЛК или С ГОТ;

60 Неверно задан индекс ломаной.

3.4.1.2.    ЗАДАТЬ ТИП ЛИНИИ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень та.

SET LINETYPE.

Параметр:

Вх тип линии    <—п...—I, I... п    Ц.

Действие:

В поле «текущий тип липни» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих выходных примитивов ЛОМАНАЯ, создаваемых, когда поле «текущий ФВА типа линии» в таблице состояния ЯГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение не влияет на отображение последующих выходных примитивов ЛОМАНАЯ, создаваемых, когда поле «текущий ФВА типа линии» в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Параметр тип линии устанавливает следующие значения типов линии:

<0 — зависит от реализации;

1    — сплошная линия;

2    — штриховая линия;

3    — пунктирная линия;

4    — штрихпунктпрная линия;

> =»5 — резервируются для будущей стандартизации.

Если указанные типы линии не поддерживаются станцией, используется сплошная линия.

Описание функции в соответствии с пп. 2.4.2; 2.4.3.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

63 Тип линии равен нулю.

3.4.1.3.    ЗАДАТЬ МАСШТАБ ТОЛЩИНЫ ЛИНИИ

ГЯОТ, СТОТ. СТАК, СГОТ Уровень 0а.

SET LINEWIDTH SCALE FACTOR.

Параметр:

Вх масштаб толщины линии    >=0    Д.

Действие:

В поле «текущий масштаб толщины линии» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих выходных примите*

Страница 93

«. 90 ГОСТ 27817-88 (СТ СЭВ 6177—88)

вон ЛОМАНАЯ, создаваемых, когда поле «текущий ФВА масштаба толщины линии» в таблице состояния Я ГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение не оказывает воздействия на отображение последующих выходных примитивов ЛОМАНАЯ, создаваемых, когда поле «текущий ФВА масштаба толщины линии» в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Масштаб толщины линии применяется к номинальной ширине линии станции. Результат привязывается станцией к ближайшей доступной ширине линии.

Описание функции в соответствии с пп. 2.4.2; 2.4.3.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОГ, СТАК или СГОТ;

65 Масштаб толщины линии меньше нуля.

3.4.1.4.    ЗАДАТЬ ИНДЕКС ЦВЕТА ЛОМАНОЙ

ГЯОТ. СТОТ, СТАК. СГОТ Уровень та.

SET POLYLINE COLOUR INDEX

Параметр:

Bx индекс цвета ломаной    (0...п)    Ц.

Действие:

В поле «текущий индекс цвета ломаной» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих выходных примитивов ЛОМАНАЯ, создаваемых, когда поле «текущий ФВА индекса цвета ломаной» в таблице состояния ЯГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение не оказывает воздействия на отображение последующих выходных примитивов ЛОМАНАЯ, создаваемых, когда поле «текущий ФВА индекса цвета ломаной» в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Индекс цвета является указателем в таблице цвета станции. Если заданный индекс цвета не представлен в таблице цвета станции, то на этой станции используется зависящий от станции индекс цвета.

Описание функции в соответствии с пп. 2.4.2; 2.4.3.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

92 Индекс цвета меньше нуля.

3.4.1.5.    ЗАДАТЬ ИНДЕКС ПОЛИМАРКЕРА

ГЯОТ, СТОТ, СТАК, СГОТ Уровень 0а.

SET POLYMARKER INDEX.

Параметр:

Вх индекс полнмаркера    (I...nJ    Ц.

Действие:

В поле «текущий индекс полимаркера» в таблице ««стояния ЯГС заносится значение, заданное параметром «индекс и*лимар-

Страница 94

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 9!

кера». Это значепне используется впоследствии для создания выходных примитивов ПОЛИМАРКЕР.

Описание функции в соответствии с пп. 2.4.2; 2.4.4.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

66 Неверно задан индекс полимаркера.

3.4.1.6.    ЗАДАТЬ ТИП МАРКЕРА

ГЯОТ, СТОТ, СТАК, СГОТ Уровень та.

SET MARKER TYPE.

Параметр:

Вх тип маркера    (—п ...—I, I ... п)    Ц.

Действие:

В иоле «текущий тип маркера» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих выходных примитивов ПОЛИ-МАРКЕР. создаваемых, когда поле «текущий ФВА типа маркера» в таблице состояния ЯГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение не оказывает воздействия на отображение последующих выходных примитивов ПОЛИМАРКЕР, создаваемых, когда поле «текущий ФВА типа маркера» в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ. Параметр тип маркера задается использованием центрированных символов в качестве маркеров следующих типов:

<0 — зависит от реализации;

1 — символ «точка» (.);

2    — символ «плюс» ( + );

3    — символ «звездочка* (*);

4 — символ «кружок» (О);

5 — символ «крестик» (х).

> =6 — резервируется для будущей стандартизации.

Описание функции в соответствии с пп. 2.4.2; 2.4.4.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ. СТОТ, СТАК или СГОТ;

69 Тип маркера равен нулю.

3.4.1.7.    ЗАДАТЬ МАСШТАБ МАРКЕРА

ГЯОТ СТОТ, СТАК. СГОТ Уровень 0а.

SET MARKER SIZE SCALE FACTOR.

Параметр:

Вх масштаб маркера    >=•    Д.

Действие:

В поле «текущий масштаб маркера» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих выходных примитивов ПОЛИМАРКЕР, создаваемых, когда яоле «текущий ФВА масштаба

Страница 95

С. 92 ГОСТ 27817-8$ (СТ СЭВ 6177-88)

маркера* в таблице состояния ЯГС имеет значение ИНДИВИДУ-АЛЬНЫЯ. Это значение не оказывает воздействия на отображение последующих выходных примитивов ПОЛИМАРКЕР, создаваемых, когда поле «текущий ФВА масштаба маркера» в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Размер маркера умножается на номинальный размер маркера на станции. Результат привязывается станцией к ближайшему имеющемуся размеру маркера.

Описание функции в соответствии с пп. 2.4.2; 2.4.4.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

71 Масштаб маркера меньше нуля.

3.4.1.8.    ЗАДАТЬ ИНДЕКС ЦВЕТА ПОЛИМАРКЕРА

ГЯОТ, СТОТ, СТАК. СГОТ Уровень та.

SET POLYMARKER COLOUR INDEX.

Параметр:

Bx индекс цвета полимаркера    (0... п)    Ц.

Действие:

В поле «текущий индекс цвета полимаркера» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих выходных примитивов ПОЛИМАРКЕР, создаваемых, когда поле «текущий ФВА индекса цвета полимаркера» в таблице состояния ЯГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение не оказывает воздействия на отображение последующих выходных примитивов, создаваемых, когда поле «текущий ФВА индекса цвета полнмаркера» я таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Индекс цвета является указателем в таблице цвета станции. Если указанный индекс цвета не представлен в таблице цвета станции, то на этой станции используется индекс цвета, зависящий от станции.

Описание функции в соответствии с пп. 2.4.2; 2.4.4.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

92 Индекс цвета меньше нуля.

3.4.1.9.    ЗАДАТЬ ИНДЕКС ТЕКСТА

ГЯОТ. СТОТ, СТАК, СГОТ Уровень Оа.

SET TEXT INDEX

Параметр:

Вх индекс текста    (1... n)    LL

Действие:

В поле «текущий индекс текста» в таблице состояния ЯГС заносится значение, заданное параметром индекс текста. Это зна-

Страница 96

ГОСТ 27817—SS (СТ СЭВ 6177-88) С. 93 чснис используется для создания последующих выходных примитивов ТЕКСТ.

Описание функции в соответствии с пп. 2.4.2; 2.4.5

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТА К или СГОТ;

72 Неверно задан индекс текста.

3.4.1.10.    ЗАДАТЬ ШРИФТ И ТОЧНОСТЬ ТЕКСТА

ГЯОТ. СТОТ. СТАК. СГОТ Уровень Оа.

SET TEXT FONT AND PRECISION.

Параметр:

Bx шрифт и точность текста (—п ...—1,1----п);

(ДО СТРОКИ, ДО ЛИТЕРЫ. ДО ШТРИХА) (Ц: П).

Действие:

В поле «текущие шрифт и точность представления текста» в таблице состояния ЯГС ззноснтся значение, заданное параметром. Это значение используется для отображения последующих выходных примитивов ТЕКСТ, создаваемых, когда поле «текущий ФВА шрифта и точности текста» в таблице состояния ЯГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение те оказывает воздействия на отображение последующих выходных примитивов, создаваемых, когда поле «текущий ФВА шрифта и точности текста» в таблице состояния Я ГС имеет значение СВЯЗАННЫЙ.

Шрифт и точность представления текста является единой характеристикой текста. Конкретный шрифт текста является доступным с одной или несколькими точностями представления, все точности представления не являются обязательными. Шрифт текста 1 содержит графическое представление литер, определенное н СТ СЭВ 359—76. Индексы шрифта текста большие 1 резервируются для будущей стандартизации. Смысл отрицательных индексов шрифта текста зависит от реализации. Значение точности представления текста определяет, с какой точностью воспроизводятся другие характеристики текста. Значения точности представления текста в порядке увеличения точности: ДО СТРОКИ. ДО ЛИТЕРЫ и ДО ШТРИХА приведены в п. 2.15.3.

Если указанные шрифт и точность представления текста не поддерживаются станцией, то используются значения (I; ДО СТРОКИ).

Описание функции в соответствии с пп. 2.4.2; 2.4.5.

Ошибки:

8 ЯГС це находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

75 Шрифт равен нулю.

3.4.1.11.    ЗАДАТЬ МАСШТАБ РАСШИРЕНИЯ ЛИТЕРЫ

ГЯОТ, СТОТ. СТАК, СГОТ Уровень 0а

SET CHARACTER EXPANSION FACTOR.

Параметры:

Страница 97

в. 94 ГОСТ 27817-88 (СТ СЭВ 6177-88)

Вх масштаб расширения литеры    >0    Д.

Действие:

В поле «текущий масштаб расширения литеры» в таблице состояния ЯГС заносится значение, заданное параметром масштаб расширения литеры. Это значение используется для отображения последующих выходных примитивов ТЕКСТ, создаваемых, когда поле «текущий ФВА масштаба расширения литеры» в таблице состояния ЯГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение не оказывает воздействия на отображение последующих выходных примитивов ТЕКСТ, создаваемых, когда поле «текущий ФВА масштаба расширения литеры» в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Описание функции в соответствии с пп. 2.4.2; 2.4.5.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ. СТАК или СГОТ;

77 Масштаб расширения литеры меньше или равен нулю.

3.4.1.12.    ЗАДАТЬ МЕЖЛИТЕРНЫЙ ПРОСВЕТ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень 0а.

SET CHARACTER SPACING.

Параметры:

Вх межлитерный просвет    Д.

Действие:

В поле «текущий межлитерный просвет» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих примитивов ТЕКСТ, генерируемых, когда поле «текущий ФВА межлитерного просвета» в таблице состояния ЯГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение не оказывает воздействия на отображение последующих выходных примитивов ТЕКСТ, создаваемых, когда поле «текущий ФВА межлитерного просвета» в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Описание функции в соответствии с пп. 2.4.2; 2.4.5.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ.

3.4.1.13.    ЗАДАТЬ ИНДЕКС ЦВЕТА ТЕКСТА

ГЯОТ. СТОТ. СТАК, СГОТ Уровень та.

SET TEXT COLOUR INDEX.

Параметры:

Вх индекс цвета текста    (0...п)    Ц.

Действие:

В поле «текущий индекс цвета текста» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих выходных примитивов. ТЕКСТ, создаваемых, когда поле «текущий ФВА индекса цвета.

Страница 98

ГОСТ 27817-88 (СТ СЭВ 6177—88) С. 95

текста» в таблице состояния ЯГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение не оказывает воздействия на отображение последующих выходных примитивов ТЕКСТ, создаваемых, когда поле «текущий ФВА индекса цвета текста» в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Индекс цвета является указателем в таблице цвета станции. Если указанный индекс цвета не представлен в таблице цвета станции, то используется зависящий от станции индекс.

Описание функции в соответствии с пп. 2.4.2; 2.4.5.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или

СГОТ:

92 Индекс цвета меньше нуля.

3.4.1.14.    ЗАДАТЬ ВЫСОТУ ЛИТЕРЫ

ГЯОТ. СТОТ. СТАК, СГОТ Уровень та.

SET CHARACTER HEIGHT.

Параметры:

Вх высота литеры    МК    >0    Д.

Действие:

В поле «текущая высота литеры» в таблице состояния ЯГС заносится значение, заданное параметром высота литеры.

В поле «текущая ширина литеры» в таблице состояния ЯГС заносится значение произведения текущей высоты литеры на отношение ширины к высоте, заданное разработчиком шрифта. Эти значения используются для создания последующих выходных примитивов ТЕКСТ.

Описание функции в соответствии с пп. 2.4.2; 2.4.5.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ. СТОТ, СТАК или СГОТ;

78 Высота литер меньше или равна нулю.

3.4.1.15.    ЗАДАТЬ ВЕРТИКАЛЬ ЛИТЕРЫ

ГЯОТ, СТОТ. СТАК, СГОТ Уровень та.

SET CHARACTER UP VECTOR.

Параметры:

Вх вертикаль литеры    МК    2хД.

Действие:

В поле «текущая вертикаль литеры» в таблице состояния ЯГС заносится значение, заданное параметром вертикаль литеры.

В поле «текущая горизонталь литеры» в таблице состояния ЯГС заносится значение вектора произвольпой длины, ортогонального к вектору вертикаль литеры и повернутого от него по направлению часовой стрелки.

Страница 99

С. 96 ГОСТ 27817-88 (СТ СЭВ 6177—88)

Эти значения используются для создания последующих выходных примитивов ТЕКСТ.

Описание функции в соответствии с пп. 2.4.2; 2.4.5.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

79 Длина вертикали литеры равна нулю.

3.4.1.16.    ЗАДАТЬ НАПРАВЛЕНИЕ ТЕКСТА

ГЯОТ, СТОТ, СТАК, СГОТ Уровень Оа

SET TEXT PATH.

Параметры:

Вх направление текста

(ВПРАВО, ВЛЕВО, ВВЕРХ, ВНИЗ)    П.

Действие:

В поле «текущее направление текста» в таблице состояния ЯГС заносится значение, заданное параметром направление текста. Это значение используется для создания последующих выходных примитивов ТЕКСТ.

Примечание. При установке направления триста значение поля «текущее выравнивание текста (горизонтальное и вертикальное)» не а:пользуется.

Описание функции в соответствии с пп. 2.4.2; 2.4.5.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ.

3.4.1.17.    ЗАДАТЬ ВЫРАВНИВАНИЕ ТЕКСТА

ГЯОТ, СТОТ, СТАК, СГОТ Уровень та. SET TEXT ALIGNMENT.

Параметры:

Вх выравнивание текста

(ОБЫЧНОЕ, ЛЕВОЕ, ЦЕНТРАЛЬНОЕ. ПРАВОЕ; ОБЫЧНОЕ. ПО ВЕРХУ, ПО ЗАГЛАВНОЙ,

ПО СЕРЕДИНЕ, ПО ОСНОВАНИЮ, ПО НИЗУ) П;Г1. Действие:

В поле «текущее выравнивание текста (горизонтальное и вертикальное)» таблицы состояпия ЯГС заносятся значения, заданные параметром выравнивание текста. Эти значения используются для создания последующих выходных примитивов ТЕКСТ.

Описание функции в соответствии с пп. 2.4.2; 2.4.5.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ.

3.4.1.18.    ЗАДАТЬ ИНДЕКС ПОЛИГОНАЛЬНОЙ ОБЛАСТИ

ГЯОТ. СТОТ, СТАК, СГОТ Уровень Оа. SET FILL AREA INDEX.

Параметры:

Вх индекс полигональной области (1...п)    Ц.

Страница 100

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 97

Действие:

В поле «текущий индекс полигональной области» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для создания последующих выходных примитивов ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ.

Описание функции в соответствии с пп. 2.4.2; 2.4.6.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

80 Неверно задан индекс полигональной области.

3.4.1.19.    ЗАДАТЬ ВИД ЗАПОЛНЕНИЯ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень та.

SET FILL AREA INTERIOR STYLE.

Параметры:

Ях вид заполнения полигональной области

(ПУСТО, ЗАЛИВКА, ПО ШАБЛОНУ, ШТРИХОВКА) П.

Действие:

В поле «текущий вид заполнения полигональной области» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих выходных примитивов ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ, создаваемых, когда поле «текущий ФВА вида заполнения полигональной области» в таблице состояния ЯГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение не оказывает воздействия на отображение последующих выходных примитивов ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ. создаваемых, когда поле «текущий ФВА вида заполнения полигональной области» в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Если запрошенный вид заполнения не обеспечен на станции, то на угой станции используется зависящее от реализации значение.

Описание функции в соответствии с пп. 2.4.2; 2.4.6.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОК. СТАК или СГОТ.

3.4.1.20.    ЗАДАТЬ ИНДЕКС ЗАПОЛНИТЕЛЯ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень 0а.

SET FILL AREA STYLE INDEX.

Параметры:

Bx индекс заполнителя полигональной области    (—п...—1,

I... п)    Ц.

Действие:

В поле «текущий индекс заполнителя полигональной области» таблицы состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих

Страница 101

С. 98 ГОСТ 27817-88 (СТ СЭВ 6177-88)

выходных примитивов ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ, создаваемых, когда иоле «текущий ФВА индекса заполнителя полигональной области» в таблице состояния ЯГС имеет значение ИНДИ-ВИДУАЛЬНЫЙ. Это значение не оказывает воздействия на отображение последующих выходных примитивов ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ, создаваемых, когда поле «текущий ФВА индекса заполнителя полигональной области* в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Значение индекса не используется для видов заполнения ПУСТО И ЗАЛИВКА. Для вида заполнения ШТРИХОВКА значение индекса определяет, какой вид штриховки используется. Виды штриховки больше нуля резервируются для будущей стандартизации, виды штриховки меньше нуля зависят от станции.

Если запрошенный вид заполнения не обеспечен на станции, то на этой станции используется индекс 1. Если индекс 1 не представлен на этой станции, то результат зависит от станции.

Описание функции в соответствии с пп. 2.4.2; 2.4.6.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

84 Индекс заполнителя (шаблона или штриховки) равен нулю.

3.4.1.21. ЗАДАТЬ ИНДЕКС ЦВЕТА ПОЛИГОНАЛЬНОЙ ОБЛАСТИ

ГЯОТ. СТОТ, СТАК, СГОТ Уровень та.

SET FILL AREA COLOUR INDEX.

Параметры:

Bx индекс цвета полигональной области (0... п)    Ц.

Действие:

В поле «текущий индекс цвета полигональной области» в таблице состояния ЯГС заносится значение, заданное параметром. Это значение используется для отображения последующих выходных примитивов ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ, создаваемых, когда поле «текущий ФВА индекса цвета полигональной области* в таблице состояния ЯГС имеет значение ИНДИВИДУАЛЬНЫЙ. Это значение не оказывает воздействия на отображение последующих выходных примитивов ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ создаваемых, когда поле «текущий ФВА индекса цвета полигональной области» в таблице состояния ЯГС имеет значение СВЯЗАННЫЙ.

Индекс цвета является указателем таблиц цвета станций. Если указанный индекс цвета не представлен на станции, то на этой станции используется индекс цвета, зависящий от станции.

Описание функции в соответствии с пп. 2.4.2; 2.4.6.

Ошибки:

Страница 102

ГОСТ 27817-88 (СТ СЭВ С177-88) С. »

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК ил» СГОТ;

92 Индекс цвета меньше нуля.

3.4.1.22.    ЗАДАТЬ РАЗМЕР ШАБЛОНА

ГЯОТ, СТОТ. СТАК. СГОТ Уровень Оэ.

SET PATTERN SIZE.

Параметры:

Вх размер шаблона Sx, Sy МК >0    2ХД.

Действие:

В поле «текущая горизонталь шаблона* в таблице состояния ЯГС заносится значение (Sx, 0). В поле «текущая вертикаль шаблона* в таблице состояний ЯГС задастся вектор (0, Sy). Когда вид заполнения полигональной области (выбранный через связку полигональной области или индивидуально в зависимости от соответствующего ФВА), имеет значение ПО ШАБЛОНУ, это значение используется там, где это возможно, совместно со значением поля «текущая точка привязки шаблона» таблицы состояния ЯГС для отображения выходных примитивов ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ.

Описание функции в соответствии с пп. 2.4.2; 2.4.6.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК илв СГОТ;

87 Значение размера шаблона не положительно.

3.4.1.23.    ЗАДАТЬ ТОЧКУ ПРИВЯЗКИ ШАБЛОНА

ГЯОТ. СТОТ, СТАК, СГОТ Уровень Ож.

SET PATTERN REFERENCE POINT.

Параметры:

Вх точка привязки шаблона МК    Т.

Действие:

В поле «текущая точка привязки шаблона* в таблице состояния ЯГС заносится значение, заданное параметром. Когда внд полигональной области (выбранный через связку полигональной области или индивидуально в зависимости от значения соответствующего ФВА), имеет значение ПО ШАБЛОНУ, это значение используется там, где это возможно, совместно со значением поля «текущая горизонталь шаблона» и поля «текущая вертикаль шаблона* в таблице состояния ЯГС для отображения выходных примитивов ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ.

Описание функции в соответствии с пп. 2.4.2; 2.4.6.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или' СГОТ

3.4.1.24.    ЗАДАТЬ ФЛАГИ ВЫБОРКИ АТРИБУТОВ

ГЯОТ. СТОТ, СТАК. СГОТ Уровень 0а.

SET ASPECT SOURCE FLAGS.

Страница 103

С. 100 ГОСТ 27817-88 (СТ СЭВ 6177-88)

Параметры:

Вх список флагов выборки атрибутов (СВЯЗАННЫЙ. ИНДИВИДУАЛЬНЫЙ)    13ХП.

Действие:

В ноля «текущие флаги выборки атрибутов (ФВА)» таблицы состояния ЯГС заносятся значения, заданные параметром. Список флагов выборки атрибутов задается в следующем порядке:

ФВА типа линии;

ФВА масштаба толщины линий;

ФВА индекса цвета ломаной;

ФВА типа маркера;

ФВА масштаба маркера;

ФВА индекса цвета полимаркера;

ФВА шрифта и точности текста;

ФВА масштаба расширения литеры;

ФВА межлнтерного просвета;

ФВА индекса цвета текста;

ФВА вида заполнения полигональной области;

ФВА индекса заполнения полигональной области;

ФВА индекса цвета полигональной области.

Описание функции в соответствии с п. 2.4.2.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ.

3.4.1.25. ЗАДАТЬ ИДЕНТИФИКАТОР УКАЗАНИЯ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень 1Ь.

SET PICK IDENTIFIER.

Параметр:

Вх идентификатор указания    И.

Действие:

В поле «текущий идентификатор указания» в таблице состояния ЯГС заносится значение, заданное параметром.

Описание функции в соответствии с пп. 2.4.2; 2.7.1; 2.8.1; 2.8.4. Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОГ, СТАК или СГОТ.

97 Неверно задан идентификатор указания.

3.4.2. Функции задания зависящих от станции атрибутов примитивов

3.4.2.1. ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ЛОМАНОЙ

СТОТ, СТАК, СГОТ Уровень 1а.

SET POLYLINE REPRESENTATION.

Параметры:

Вх идентификатор станции    И;

Вх индекс ломаной    (1...п)    Ц;

Вх тип линии    (—п...—1, 1...п)    Ц;

Вх масштаб толщины линии    >=0    Д;

Страница 104

ГОСТ 27817-М (СТ СЭВ 61Л-в8) С. 10»

Вх индекс цвета ломаной    (0... п)    И.

Действие:

В таблице связок ломаной таблицы состояния станции заданный индекс ломаной связывается с заданными параметрами.

Параметр тип линии имеет следующие значения:

<0 — зависит от реализации;

1    — сплошная линия;

2    — штриховая линия;

3    — пунктирная линия;

4    — штрихпунктирная линия.

> =»5 — резервируется для будущей стандартизации.

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

Параметр индекс цвета ломаной является указателем в таблице цвета станции.

Таблица связок ломаной в таблице состояния станции имеет предопределенные поля, взятые из таблицы описания станции. Их число (в соответствии с табл. 3) определено для каждой станцви-катсгорий ВЫВОД или ВВОД-ВЫВОД.

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

При отображении ломаной индекс ломаной определяет связку в таблице связок ломаной. Если индекс ломаной ссылается на отсутствующую связку, то используется индекс 1. Использование имеющихся в связке характеристик зависит от значений соответствующих ФВА, описанных в п. 2.3.

Описание функции в соответствии с пп. 2.4.3; 2.5.3.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов;

60 Неверно задан индекс ломаной;

63    Тип линии равен нулю;

64    Указанный тип линий не поддерживается на данной станции;

65    Масштаб толщины линии меньше нуля;

93 Неверно задан индекс цвета.

3.4.2.2. ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ПОЛИМАРКЕРА

СТОТ, СТАК, СГОТ Уровень 1а.

SET POLYMARKER REPRESENTATION.

Параметры:

Страница 105

•С 102 ГОСТ 27817-88 (СТ СЭВ 6177—88>

Вх идентификатор станции    И;

Вх индекс полнмаркера    (!...п)    Ц;

Вх тип маркера    (—п... —1, 1... л)    Ц;

Вх масштаб маркера    >—0    Д;

Вх индекс цвета полнмаркера    (0...п)    Ц.

Действие:

В таблице связок полнмаркера таблицы состояния станции заданный индекс полнмаркера связывается с заданными параметрами.

Параметр тип маркера имеет следующие значения:

<0 — зависит от реализации;

1    — символ «точка» (.);

2    —символ «плюс» ( + );

3    — символ «звездочка* (•);

4    — символ «кружок* (О);

5    — символ «крестик» (х).

>»6 — резервируется для будущей стандартизации.

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

Параметр индекс цвета полимаркера является указателем в таблице цвета станции.

Таблица связок полимаркера в таблице состояния станции имеет предопределенные поля, взятые из таблицы описания станции. Их число (в соответствии с табл. 3) определено для каждой станции категорий ВЫВОД или ВВОД-ВЫВОД.

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

При отображении полнмаркера индекс полнмаркера определяет связку в таблице связок полнмаркера. Если индекс полимаркера ссылается на отсутствующую связку, то используется индекс I. Использование имеющихся в связке характеристик зависит от значений соответствующих ФВА, описанных в п. 2.3.

Описание функции в соответствии с пп. 2.4.4; 2.5.3.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов;

<56 Неверно задан индекс полимаркера;

69    Тип маркера равен нулю;

70    Заданный тип маркера не поддерживается на данной станции;

71    Размер маркера меньше нуля;

Страница 106

ГОСТ 27817-88 (СТ СЭВ 8177—38) С. !

93 Неверно задан индекс цвета.

3.4.2.3. ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ТЕКСТА

СТОТ, СТАК, СГОТ Уровень 1а.

SET TEXT REPRESENTATION.

Параметры:

Вх идентификатор станции    И;

Вх индекс текста    (1.. .а)    Ц;

Вх шрифт    и точность текста    (—п ...    —1,    1... п;

СТРОКИ. ДО ЛИТЕРЫ. ДО    ШТРИХА) Ц; П;

Вх масштаб расширения литеры    >0    Д;

Вх меж литерный просвет    Д;

Вх индекс    цвета текста    (0.. .п)    Ц.

Действие:

В таблице связок текста таблицы состояния станции заданный индекс текста связывается с заданными параметрами.

Параметр шрифт и точность представления текста задает единую характеристику текста. Конкретный шрифт текста может быть доступен с некоторой точностью представления, но не обязательно со всеми точностями представления текста. Значение шрифта текста используется для выборки конкретного шрифта на заданной станции. Шрифт текста ] содержит графическое представление литер, определенное в СТ СЭВ G5S—86. Шрифты текста с номерами больше i резервируются длл будущей стандартизации. Шрифты текста с номерами меньше 1 зависят от реализации.

Значение точности представления текста определяет, с какой точностью воспроизводятся другие характеристики текста. Значения точности представления текста в порядке увеличения точности: ДО СТРОКИ; ДО ЛИТЕРЫ; ДО ШТРИХА приведены в п. 2.15.3.

Параметр масштаб расширения литеры устанавливает откло* нение отношения ширины литеры к ее высоте*от величины отношения. указанной разработчиком шрифта.

Параметр межлитерный просвет устанавливает дополнительное пространство между двумя смежными литерами. Промежуток между литерами задается как множитель к номинальной высоте литер данного шрифта.

Параметр индекс цвета задает указатель я таблице цвета станции.

Таблица связок текста в таблице состояния станции имеет предопределенные поля, взятые из таблицы описания станции. Их число (в соответствии с табл. 3) определено для каждой станции категорий ВЫВОД или ВВОД-ВЫВОД.

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

При отображении текста индекс текста ссылается на одно из полей в таблице связок текста. Если при отображении текста ин-

4 Зак. 2214

Страница 107

С. 1(М ГОСТ 27817-88

деке текста ссылается на отсутствующее в таблице связок поле, то-используется значение индекса текста 1. Использование характеристик текста, имеющихся в связке, зависит от установки соответствующих ФВА, описанных в п. 2.3.

Описание функции в соответствии с пп. 2.4.5; 2.5.3.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов;

72 Неверно задан индекс текста;

75    Шрифт равен нулю;

76    Заданный шрифт текста не поддерживается с требуемой точностью представления текста иа данной станции;

77    Масштаб расширения литер меньше или равен нулю;

93 Неверно задан индекс цвета;

3.4,2.4. ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ

СТОТ, СТАК, СГОТ Уровень !а.

SET FILL AREA REPRESENTATION.

Параметры:

Bx идентификатор станции    И;

Вх индекс полигональной области    (1...П)    Ц;

Вх вид заполнения полигональной области (ПУСТО, ЗАЛИВКА. ПО ШАБЛОНУ, ШТРИХОВКА)    П;

Вх индекс заполнителя полигональной области

(-П..-1, 1 ..п) Ц;

Вх индекс цвета полигональной области (0... и)    Ц.

Действие:

В таблице связок полигональной области таблицы состояния станции заданный индекс полигональной области связывается с. заданными параметрами.

Параметр вид заполнения полигональной области задает зна~ чения: ПУСТО. ЗАЛИВКА, ПО ШАБЛОНУ и ШТРИХОВКА, которые описаны в п. 2.4 4.

Параметр индекс заполнителя полигональной области устанавливает значение, которое для видов заполнения ПУСТО и ЗАЛИВКА не используется. Для вида заполнения ПО ШАБЛОНУ это значение больше нуля и является указателем в таблице шаблонов-станции. Для вида заполнения ШТРИХОВКА это значение определяет. какой из набора зависимых от станции видов штриховки будет использоваться. Вид штриховки больше нуля резервируется для будущей стандартизации. Вид штриховки меньше нуля зависят от станции.

Страница 108

ГОСТ 27817-88 (СТ СЭВ 6177—88) С. 105

Параметр индекс цвета полигональной области задает указатель в таблице цвета станции.

Таблица связок полигональной области в таблице состояния станции имеет предопределенные поля, взятые из таблицы описания станции. Их число {в соответствии с табл. 3) определено для каждой станции категорий ВЫВОД или ВВОД-ВЫВОД.

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

При отображении полигональной области текущий индекс полигональной области ссылается на одно из полей таблицы связок полигональной области. Если при отображении полигональной области индекс полигональной области ссылается на поле, отсутствующее в таблице связок полигональной области, то используется значение индекса полигональной области 1. Использование характеристик, имеющихся в поле, зависит от установки соответствующих ФВА, описанных в п. 2.3.

Описание функции в соответствии с пп. 2.4.6; 2.5.3.

Ошибки:

7 ЯГС не находится в состоянии СТОТ. СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта:

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов;

80 Неверно задан индекс полигональной области;

83 Заданный вид заполнения полигональной области не поддерживается на данной станции;

85    Неверно задан индекс шаблона;

86    Заданный вид штриховки не поддерживается на данной станции'.

93 Неверно задан индекс цвета.

3.4.2.5. ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ШАБЛОНА

СТОТ, СТАК, СГОТ Уровень 1а.

SET PATTERN REPRESENTATION.

Параметры:

Вх идентификатор станции    И;

Вх индекс шаблона    (1... п)    Ц;

Вх размерности массива шаблона    (1...п)    2ХЦ;

Вх массив шаблона    (0...п)    пХпХЦ.

Действие:

В таблице шаблонов таблицы состояния станции заданный индекс шаблона связывается с заданными параметрами.

Шаблон представляет собой прямоугольную сетку, которая имеет Nx ячеек по горизонтали и Ny ячеек по вертикали. Цвет каждой ячейки задается значением соответствующего элемента параметра массив шаблона. Значения, заданные элементами массива

4‘

Страница 109

С. 106 ГОСТ 27817-88 (СТ СЭВ 6177-88)

шаблона, используются в качестве индекса цвета (указателя) в таблице цвета станции (в соответствии с п. 2.4.4).

Если станция поддерживает вид заполнения ПО ШАБЛОНУ, то таблица шаблонов в таблице состояния станции имеет предопределенные поля, взятые из таблицы описания станции. Их число (в соответствии с табл. 3) определено для каждой станции категорий ВЫВОД или ВВОД-ВЫВОД.

Любое поле таблицы шаблонов (включая и предопределенные-поля) может быть переопределено с помощью этой функции.

Если при отображении полигональной области выбранный в текущий момент (через связку полигональной области или индивидуально в зависимости от соответствующего ФВА) вид заполнения имеег значение ПО ШАБЛОНУ, то выбранный индекс заполнителя ссылается на поле в таблице шаблонов.

Если при отображении полигональной области индекс заполнителя ссылается на поле, отсутствующее в таблице шаблонов, то используется значение 1. Если значения 1 индекса шаблона в таблице шаблонов нет (т. е. вид заполнения ПО ШАБЛОНУ не поддерживается этой станцией), то результат зависит от станции.

Описание функции в соответствии с пп. 2.4.6; 2.5.3.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК, или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является обшей памятью сегментов;

85 Неверно задан индекс шаблона;

90    Заполнение по шаблону не поддерживается на данной станции;

91    Неверно заданы размерности массива индексов цвета;

93 Неверно задан индекс цвета.

3.4.2.6. ЗАДАТЬ ПРЕДСТАВЛЕНИЕ ЦВЕТА

СТОТ, СТАК. СГОТ Уровень та.

SET COLOUR REPRESENTATION. Параметры:

Вх идентификатор станции

(0...П)

Вх индекс цвета

Вх интенсивность цвета (красного, зеленого, синего)

(0..1.)    ЗХД.

Действие:

В таблице цвета таблицы состояния станции заданный индекс цвета связывается с заданным цветом. Цвет привязывается станцией к ближайшему доступному цвету.

Таблица цвета в таблице состояния станции имеет предопределенные поля, взятые из таблицы описания станции. Для каждой

Страница 110

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. ЮГ

станции категории ВЫВОДА или ВВОДА-ВЫВОДА должны быть предопределены, по крайней мере, поля, соответствующие индексам 0 и 1.

Любое поле таблицы цвета (включая и предопределенные поля) может быть переопределено с помощью этой функции.

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

Описание функции в соответствия с пп. 2.4.2; 2.4.9; 2.5.3. Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является обшей памятью сегментов;

93 Неверно задан индекс цвета;

90 Интенсивность цвета лежит вне диапазона от нуля до единицы.

3.5. Функции преобразований 3.5.1. Функции задания преобразования нормирования ,    3.5.1.1. ЗАДАТЬ ОКНО

ГЯОТ, СТОТ, СТАК, СГОТ Уровень та.

SET WINDOW.

Параметры:

Вх номер преобразования (1 . . . п)    Ц;

Вх границы окна Xmin<Xmax, Ymin<Ymax МК    4хД.

Действие:

В поле «окно» таблицы состояния ЯГС, соответствующее заданному номеру преобразования нормирования, заносятся знамения параметра границы окна.

Описание функции в соответствии с пп. 2.6.1; 2.8.4.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

50    Неверно задан номер преобразовании;

51    Неверно задан прямоугольник.

3.5.1.2. ЗАДАТЬ ПОЛЕ ВЫВОДА

ГЯОТ, СТОТ, СТАК. СГОТ Уровень та.

SET VIEWPORT.

Параметры:

Вх номер преобразования (1 . . . п)    Ц;

Вх границы поля вывода

Xmin<Xmax, Ymin<Ymax НК    4ХД.

Действие:

В поле «поле вывода» таблицы состояния ЯГС, соответствующее заданному номеру преобразования нормирования, заносятся

Страница 111

С. J08 I ОСТ 27817-88 (СТ СЭВ 6177-88)

значения параметра границы поля вывода. Если указанный номер преобразования является текущим, то отсекающий прямоугольник в таблице состояния ЯГС заносится равным «полю вывода».

Описание функции в соответствии с пп. 2.6.1; 2.8.4.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

50    Неверно задан номер преобразования;

51    Неверно задан прямоугольник;

52    Поле вывода находится вне единичного квадрата нормированных координат.

3.5.1.3.    ЗАДАТЬ ПРИОРИТЕТ ПОЛЯ ВЫВОДА ПРИ ВВОДЕ

ГЯОТ, СТОТ, СТАК. СГОТ Уровень 0Ь.

SET VIEWPORT INPUT PRIORITY.

Параметры:

Bx номер преобразования (0 . . . п)    Ц;

Вх номер сравниваемого преобразования (0 . .    .    п)    Ц;

Вх относительный приоритет (ВЫШЕ, НИЖЕ)    П.

Действие:

Приоритет поля вывода при вводе преобразования нормирования с номером «номер преобразования» заносится    на единицу

большим или на единицу меньшим приоритета поля вывода преобразования с номером «номер сравниваемого преобразования» в зависимости от значения, заданного параметром, относительный приоритет.

Описание функции в соответствии с пп. 2.6.4: 2.8.4.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ. СТОТ, СТАК или СГОТ;

50 Неверно задай номер преобразования.

3.5.1.4.    ВЫБРАТЬ ПРЕОБРАЗОВАНИЕ НОРМИРОВАНИЯ

ГЯОТ. СТОТ, СТАК, СГОТ Уровень та.

SELECT NORMALIZATION TRANSFORMATION.

Параметры:

Вх номер преобразования {0 . . . п)    Ц.

Действие:

Параметр заносится в поле «текущий номер преобразования нормирования* таблицы состояния ЯГС. В поле «прямоугольник отсечения» устанавливаются границы поля вывода указанного номера преобразования.

Описание функции в соответствии с п. 2.6.1.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

50 Неверно задай номер преобразования.

3-5.1.5. ЗАДАТЬ ИНДИКАТОР ОТСЕЧЕНИЯ

ГЯОТ. СТОТ, СТАК, СГОТ Уровень та.

SET CLIPPING INDICATOR.

Страница 112

ГОСТ 27817-88 (СТ СЭВ 6177-88» С. 109

Параметры:    „

Вх индт*атор отсечения (ОТСЕКАТЬ, НЕ ОТСЕКАТЬ) П.

Действие:

В поле «индикатор отсечения» таблицы состояния ЯГС заносится значение, заданное параметром.

Описание функции в соответствии с пп. 2.6.2; 2.7.4; 2.7.6; 2.8.4.

Ошибки:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ.

3.5.2. Функции задания преобразования станции

3.5.2.1.    ЗАДАТЬ ОКНО СТАНЦИИ

СТОТ, СТАК. СГОТ Уровень та.

SET WORKSTATION WINDOW.

Параметры:

Вх идентификатор станции    И;

Вх границы окна станции

XmlnCXinax, Ymin<Ymax НК    4ХД.

Действие:

В поле «запрошенное окно станций» таблицы состояния станции заносятся значения, заданные параметром границы окна станции.

Если поле «способ динамической модификации для преобразования станции» в таблице описания станции имеет значение НОИ или если поле «заполненность носителя изображения» в таблице состояния станции имеет значение ПУСТ, то в поле «текущее окно станции» заносится значение, заданное параметром, и и поле «состояние обновления преобразования станции» заносится значение НЕ ЗАДЕРЖАНО. В противном случае в поле «состояние обновления преобразования станции» в таблице состояния станции заносится значение ЗАДЕРЖАНО, а поле «текущее окно станции» не изменяется.

Описание функции в соответствии с п. 2.6.3.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

36 Указанная станция является общей памятью сегментов;

51 Неверно задан прямоугольник;

53 Окно станции находится вне единичного квадрата нормированных координат.

3.5.2.2.    ЗАДАТЬ ПОЛЕ ВЫВОДА СТАНЦИИ

СТОТ, СГОТ, СТАК Уровень та.

SET WORKSTATION VIEWPORT.

Параметры:

Вх идентификатор станции    И;

Вх границы поли вывода станиин

Xmin<Xmax, Ymin<Ymax КУ    4ХД.

Страница 113

,С НО ГОСТ 27817-88 (СТ СЭВ 6177—88)

Действие:

В поле «запрошенное поле вывода станции» в таблице состояния станции заносится значение, заданное параметром «границы поля вывода станции».

Если поле «способ динамической модификации для преобразования станции* в таблице описания станции имеет значение НОИ 'или если поле «заполненность носителя изображения» в таблице состояния станции имеет значение ПУСТ, то в поле «текущее поле ‘вывода станции» заносится значение, заданное параметром, и в поле «состояние обновления преобразования станции» задается значение НЕ ЗАДЕРЖАНО. В противном случае в поле «состояние обновления преобразования станцией» в таблице состояния станции заносится значение ЗАДЕРЖАНО, а поле «текущее поле вывода станции» не изменяется.

Описание функции в соответствии с л. 2.6.3.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

2Г> Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

36 Указанная станция является общей памятью сегментов;

51 Неверно задан прямоугольник;

54 Поле вывода станции не находится внутри пространства изображения.

3.6. Функции сегментации

3.6.1.    Функции действий над сегментами

3.6.1.1.    СОЗДАТЬ СЕГМЕНТ

СТАК Уровень 1а.

' CREAT SEGMENT.

Параметры:

Вх имя сегмента    И

Действие:

ЯГС переводится в функциональное состояние СГОТ — «сегмент открыт». Создается и подготавливается таблица состояния сегмента. Имя сегмента записывается в поле «имя открытого сегмента» в таблицу состояния ЯГС. Последующие выходные примитивы до вызова функции ЗАКРЫТЬ СЕГМЕНТ объединяются в этот сегмент. Имя сегмента заносится в поле «список запомненных на станции сегментов» таблицы состояния станции всех активных станций. Все активные станции включаются в «набор связанных с сегментом станций» таблицы состояния сегмента. Имя сегмента заносится в «набор имен существующих сегментов» таблицы состояния ЯГС. Атрибуты примитивов не изменяются.

Описание функции в соответствии с п. 2.7.1.

Ошибки:

3 ЯГС не находится в состоянии СТАК;

Страница 114

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 111

120    Неверно задано имя сегмента;

121    Указанное имя сегмента уже используется.

3.6.1.2.    ЗАКРЫТЬ СЕГМЕНТ

СГОТ Уровень 1а.

CLOSE SEGMENT.

Параметры:

Нет.

Действие:

ЯГС переводится в функциональное состояние СТАК — «по крайней мере одна станция активна». Выходные примитивы больше не добавляются к сегменту. Поле «имя открытого сегмента» таблицы состояния ЯГС становится недоступным.

Описание функции в соответствии с п. 2.7.1.

Ошибки:

•1 ЯГС не находится в состоянии СГОТ.

3.6.1.3.    ПЕРЕИМЕНОВАТЬ СЕГМЕНТ

СТОТ, СТАК, СГОТ Уровень 1а.

RENAME SEGMENT.

Параметры:

Вх старое имя сегмента    И;

Вх новое имя сегмемта    И.

Действие:

Прежнее имя сегмента в поле «список запомненных на станции сегментов» таблицы состояния станции и в поле «набор имен существующих сегментов» таблицы состояния ЯГС заменяется новым именем сегмента. Если сегмент открыт, то в пате «имя открытого сегмента» таблицы состояния ЯГС заносится новое имя сегмента.

'Примечание. Прежнее имя сегмента может быть нноеь (реголмоваио

прикладной программой.

Описание функции в соответствии с п. 2.7.1.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

120    Неверно задано имя сегмента;

121    Указанное имя сегмента уже используется;

122    Указанный сегмент не существует.

3.6.1.4.    УНИЧТОЖИТЬ СЕГМЕНТ

СТОТ, СТАК, СГОТ Уровень 1а.

DELETE SEGMENT.

Параметры:

Вх имя сегмента    И.

Действие:

Удаляются сегмент и его имя в поле «список запомненных на станции сегментов» таблиц состояния станций, связанных с сегментом. Имя сегмента удаляется из поля «набор имен существующих сегментов* в таблице состояния ЯГС. Таблица состояния сегмен*

Страница 115

С 112 ГОСТ *7817-88 (СТ СЭВ 6177-88)

та удаляется.

•П'Р и м сч а н и с. Имя сегмента может виовь использоваться прикладной программой.

Описание функции в соответствии с пп. 2.5.3; 2.7.1.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

120 Неверно задано имя сегмента;

122    Указанный сегмент не существует;

.125 Указанный сегмент открыт.

3.6.1.5.    УДАЛИТЬ СЕГМЕНТ СО СТАНЦИИ

СТОТ, СТАК. СГОТ Уровень 1а.

DELETE SEGMENT FROM WORKSTATION.

Параметры:

Bx идентификатор станции    И;

Вх имя сегмента    И.

Действие;

Сегмент удаляется с заданной станции. Имя сегмента удаляется из поля «список запомненных на станции сегментов» таблицы состояния станции. Идентификатор станции удаляется из поля «набор связанных с сегментом станций» таблицы состояния сегмента. Если поле «набор связанных с сегментом станций» становится пустым, то сегмент удаляется, т. е. выполняется функция УНИЧТОЖИТЬ СЕГМЕНТ.

Описание функции в соответствии с пп. 2.5.3: 2.7.!.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35 Указанная станция является станцией ввода;

120 Неверно задано имя сегмента;

123    Указанный сегмент не существует на указанной станции;

125 Указанный сегмент открыт.

3.6.1.6.    СВЯЗАТЬ СЕГМЕНТ СО СТАНЦИЕЙ

СТОТ, СТАК Уровень 2а.

ASSOSIATE SEGMENT WITH WORKSTATION

Параметры:

Вх идентификатор ставший    И;

Вх имя сегмента    И.

Действие:

Заданный сегмент посылается на указанную станцию так же, тсак если бы станция была активна во время его создания. Прямо-«ТОЛЫШКЯ отсечения копируются без изменений. Имя сегмента добавляется в поле «список запомненных на станции сегментов» таблицы состояния станции. Идентификатор станции включается в «набор связанных с сегментом станций» таблицы состояния сегмен-

Страница 116

ГОСТ 27817- 88 (СТ СЭВ 6)77-88) С. 1!9

та.

П р 1**м е ч а н п я:

1. Если сегмента нет » обшей памяти сегментов, 1>орв<ируете* сообщение об ошибке.

б. Если сегмент уже связан со станцией, то данная функци» не аыпл/.ня-ется.

Описание функции в соответствии с пп. 2.5.3; 2.7.1.

Ошибки:

6 ЯГС не находится в состоянии СТОТ или СТАК;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

27 Общая память сегментов не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35 Указанная станция является станцией ввода;

120 Неверно задано имя сегмента;

124 Указанный сегмент не существует в общей памяти сегментов;

3.6.1.7. ВЫВЕСТИ КОПИЮ СЕГМЕНТ НА СТАНЦИЮ

СТОТ, СТАК Уровень 2а. COPY SEGMENT ТО WORKSTATION.

Параметры:

Вх идентификатор станции    И;

Вх имя сегмента    И.

Действие:

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

Прим сч а в и я:    >

1.    Если указанный сегмскт отсутствует з обшей памяти сегментов, выдается сообщение об ошиб** Указанная станция не должна быть общей памятью сегментсе.

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

3.    Т«<ущяе значения атрибутов праиктюоз вывода, используемые при генерации последующих приыитявов. не изменяются операцией копирования.

Описание функции в соответствии с пп. 2.5.3; 2.7.1; 2.7.6.

Ошибки:

6 ЯГС не находится в состоянии СТОТ или СТАК;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

27 Общая память сегментов не открыта;

33 Указанная станция — станция ввода метафайла ЯГС; ' •

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов;

120 Неверно задано имя сегмента;

Страница 117

С. tl4 ГОСТ 27817-88 (СТ СЭВ «177-88)

124 Указанный сегмент не существует в общей памяти сегментов.

3.6.1.8. ВСТАВИТЬ СЕГМЕНТ

СТАК, СГОТ, Уровень 2а.

INSERT SEGMENT.

Параметры:

Вх имя сегмента    И;

Вх матрица преобразования    2ХЗХД.

Действие:    :

Преобразованные примитивы из заданного сегмента копируются или в открытый сегмепт (в состоянии СГОТ), или в поток примитивов вне сегмента (в состоянии СТАК). В любом случае преобразованные примитивы посылаются на все активные станции. Координаты преобразуются сначала преобразованием сегмента, вставляемого сегмента, а затем умножением на заданную в параметре матрицу:

х'

Mil MI2 М13

X

=

X

У'

М21 М22 М23

У

1

где х и у — исходные координаты в НК;

х' и у' — преобразованные координаты в НК;

Mil, Ml2, М13, М21, М22, М23 — значения, заданные параметром матрица преобразования.

М13, М23 являются координатами в НК, а остальные значения — безразмерные. Для геометрических атрибутов векторов (например ВЕРТИКАЛЬ ЛИТЕРЫ) значения М13 и М23 не учитываются.

Это преобразование называется преобразованием вставки и (концептуально) определено в пространстве НК.

Все прямоугольники отсечения во вставляемом сегменте игнорируются. Каждому примитиву назначается новый прямоугольник отсечения из таблицы состояния ЯГС, если индикатор отсечения имеет значение ОТСЕКАТЬ, или единичный прямоугольник (О . , I . ] X (0 , , 1 . ], если индикатор отсечения имеет значение НЕ ОТСЕКАТЬ. Все примитивы, обрабатываемые в процессе одного вызова функции ВСТАВИТЬ СЕГМЕНТ, получают одинаковый прямоугольник отсечения.

Примечания:

1.    Если заданного сегмента нет в обшей памяти сегментов, ф-ормнруется сообща» ке об ошибке.

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

3.    Тясущне значения атрибутов пркмнтипо* вывода, вевояыуемыс при ге-

Страница 118

ГОСТ 27817-88

мерацин последующих примитивов в пределах сегмента, в который осуществляется вставка, ае изменяются операцией встзвкк.

Описание функции в соответствии с пп. 2.5.3; 2.7.6.

Ошибки:

5 ЯГС не находится в состоянии СТАК или СГОТ;

27 Общая память сегментов не открыта;

120 Неверно задано имя сегмента;

124    Указанный сегмент не существует d обшей памяти сегментов;

125    Указанный сегмент открыт.

3.6.2. Функции задания атрибутов сегментов

3.6.2.1. ЗАДАТЬ ПРЕОБРАЗОВАНИЕ СЕГМЕНТА

СТОТ, СТАК, СГОТ Уровень 1а.

SET SEGMENT TRANSFORMATION.

Параметры:

Вх имя сегмента    И;

Вх матрица преобразования    2ХЗХД.

Действие:

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

х'

Mil MI2 М13

X

=3

X

У'

М21 М22 М23

У

f

1

где х и у — исходные координаты в НК;

х' и у — преобразованные координаты в НК;

МИ, М12, М13, M2I, М22, М23 — значения элементов матрицы преобразования.

MI3, М23 являются координатами в НК, а остальные значения — безразмерные. Для геометрических атрибутов векторов (например ВЕРТИКАЛЬ ЛИТЕРЫ) значения М13 и М23 не учитываются.

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

Преобразование сегмента концептуально определено в пространстве НК.

Преобразование сегмента запоминается в таблице состояния сегмента и не оказывает действия на содержимое сегмента.

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

Страница 119

С. 116 ГОСТ 27817-88 (СТ СЭВ 6177—88)

Описание функции в соответствии с пп. 2.5.3; 2.7.3.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

120 Неверно задано имя сегмента;

122 Указанный сегмент не существует.

3.6.2.2.    ЗАДАТЬ ВИДИМОСТЬ

СТОГ, СТАК, СГОТ Уровень 1а:

SET VISIBILITY.

Параметры:

Вх имя сегмента    И;

Вх видимость (ВИДИМЫЙ, НЕВИДИМЫЙ)    П.

Действие:

В поле «видимость» таблицы состояния заданного сегмента заносится значение, заданное параметром видимость.

Описание функции в соответствии с пп. 2.5.3; 2.7.2; 4.8.4.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

120 Неверно задано имя сегмента:

122 Указанный сегмент не существует.

3.6.2.3.    ЗАДАТЬ ВЫДЕЛЕНИЕ

СТОТ. СТАК, СГОТ Уровень 1а.

SET HICHLICHTING.

Параметры:

Вх ими сегмента    И;

Вх выделение (НОРМАЛЬНЫЙ. ВЫДЕЛЕННЫЙ)    П.

Действие:

В поле «выделение» таблицы состояния заданного сегмента заносится значение, заданное параметром выделение. Если сегмент помечен как ВЫДЕЛЕННЫЙ и ВИДИМЫЙ, то его примитивы выделяются зависимым от реализации способом.

Описание функции в соответствии с пп. 2.5.3; 2.7.2.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

120 Неверно задано имя сегмента;

122 Указанный сегмент не существует.

3.6.2.4.    ЗАДАТЬ ПРИОРИТЕТ СЕГМЕНТА

СТОТ. СТАК, СГОТ Уровень 1а.

SET SEGMENT PRIORITY.

Параметры:

Вх имя сегмента    И;

Вх приоритет сегмента [0 . , 1 . )    Д.

Действие:

В поле «приоритет сегмента» таблицы состояния указанного сегмента заносится значение, заданное параметром приоритет сегмента. Приоритет сегмента оказывает действие на отображение примитивов и на входные данные устройства указания, если Сег-

Страница 120

ГОСТ 2781"—88 (СТ СЭВ 6177-88) С 117

менты перекрывают друг друга. В этом случае Я ГС отдает предпочтение сегментам с более высоким приоритетом. Если перекрываются сегменты с одинаковым приоритетом, то результат зависит от реализации.

Примечание. Приоритет се*ментов используется только для тех станций, у которых в таблице описания станции я поле «число приоритетов сегментов» установлено значение больше 1 или 0 (значение 0 указывает на бесконечнее тело приоритетов).

Если значение поля «часло приоритетов сегмевтов> больше I, то диапазон

F0., 1.) значений параметра приоритет сегмента припсзывается к диапазону от до значения поля «число «приоритетов сегментов» для каждой станции перед использованием драйвером физического устройства. Если значение поля «число приоритетов сегментов» равно 0. то ори реализации различимы все значения приоритете» сегментов

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

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

Описание функции в соответствии с пп. 2.5.3; 2.7.2; 2.8.4.

Ошибки:

7 ЯГС не находится в состоянии СТОТ, СТАК илн СГОТ;

120 Неверно задано имя сегмента;

122 Указанный сегмент не существует;

126 Приоритет сегмента вне диапазона от нуля до единицы.

3.6.2.5. ЗАДАТЬ ЧУВСТВИТЕЛЬНОСТЬ К УКАЗАНИЮ

СТОТ. СТАК. СГОТ Уровень lb.

SET DETECTABILITY.

Параметры;

Вх имя сегмента    И;

Вх чувствительность к указанию

(НЕУКАЗЫВАЕМЫИ, УКАЗЫВАЕМЫЙ)    П.

Действие:

В поле счувствительность к указанию» таблицы состояния сегмента заносится значение, заданное параметром чувствительность к указанию. Если сегмент помечен как УКАЗЫВАЕМЫЙ и ВИДИМЫЙ, то его примитивы могут быть указаны. Примитивы из УКАЗЫВАЕМОГО, но НЕВИДИМОГО сегмента не могут быть указаны.

Описание функции в соответствии с пп. 2.7.2; 2.8.4.

Ошибки:

7 ЯГС не находится в состоянии СТОТ. СТАК или СГОТ;

120 Неверно задано имя сегмента;

122 Указанный сегмент не существует.

3.7. Функции ввода

Страница 121

С. !1« ГОСТ 27817-88 (СТ СЭВ RI77-S8)

3.7.1.    Функции инициализации устройства ввода

3.7.1.!.    ИНИЦИАЛИЗИРОВАТЬ УСТРОЙСТВО ВВОДА ПОЗИЦИИ

СТОТ, СТАК, СГОТ Уровень mb.

INITIALISE LOCATOR.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода позиции (I . . . п)    Ц;

Вх начальный номер преобразования нормирования    (0 . . . п)    Ц;

Вх начальная позиция    .    МК Т;

Вх тин подсказки и эха (—п ... —1, I ... п)    Ц;

Вх область эха Xmin<Xmax, Ymin<Ymax КУ    4ХД;

Вх запись данных устройства ввода позиции    0.

Действие:

Начальная позиция, начальный номер преобразования нормирования, тип подсказки и эха, область эха и запись занных заносятся в таблицу состояния станции.

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

Параметр «тип подсказки и эха» задает следующие значения подсказки и (или) эха:

менее 0 — подсказка и эхо зависят от устройства ввода позиции:

1    — обозначить текущую позицию, используя определенную

реализацией технику;

2    — (следящее перекрестье)-обозначить текущую позицию пе

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

3    — обозначить текущую позицию следящим маркером (курсо

ром);

4    — обозначить текущую позицию «резиновой нитью», которая

изображается в виде линии, соединяющей начальную позицию, заданную этой функцией, и текущую позицию:

5    •— обозначить текущую позицию с помощью «резинового пря

моугольника». Диагональ прямоугольника является линией. соединяющей начальную позицию, заданную этой функцией, и текущую позицию;

6    — обозначить текущую позицию, отображая числовое пред

ставление ее координат внутри области эха; равные или большие 7 — резервируются для будущей стсаддар-

тизации.

Описание функции в соответствии с пп. 2.8.2, 2.8.6.

Ошибки:

Страница 122

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. I!»

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

51 Неверно задан прямоугольник;

140    Указанное устройство ввода отсутствует на станции;

141    Устройство ввода не находится в режиме ЗАПРОС;

144    Запрошенный тип подсказки и эха не поддерживается данной станцией;

145    Область эха находится за пределами пространства изображения;

146    Неверно задано содержимое записи данных;

152 Неверно задано начальное значение.

3.7.1.2. ИНИЦИАЛИЗИРОВАТЬ УСТРОЙСТВО ВВОДА ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ

СТОТ, СТАК, СГОТ Уровень mb.

INITIALISE STROKE.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода

последовательности позиций    (1 . . . п)    Ц;

Вх начальный номер преобразования

нормирования    (0 . . . п Ц;

Вх число позиций в начальной

последовательности    (0 . . . п)    Ц;

Вх начальная последовательность

позиций    МК    пХТ;

Вх тип подсказки и эха    (—п ... —1. 1 ... п) Ц;

Вх область эха Xmin<Xmax, Ymin<Ymax КУ 4ХД;

Вх запись данных устройства ввода

последовательности позиций    0.

Действие:

Начальная последовательность позиций, начальный номер преобразования нормирования, тип подсказки и эха, область эха » запись данных заносятся в таблицу состояния станции.

Первое поле в записи данных устройства ввода последовательности позиций должно содержать размер буфера входных данных. Это число сравнивается с определенным при реализации значением поля «максимальный размер буфера входных данных» этого устройства, которое находится в таблице описания станции. Если запрошенный размер буфера больше, он заменяется на «максимальный размер буфера входных данных» в запоминаемой записи данных. Если начальная последовательность позиций длиннее размера буфера, то формируется сообщение об ошибке.

При запуске процесса измерения устройства ввода последоса-

Страница 123

С. 1 я ГОСТ 27817-88 (СТ СЭВ 6177-88)

тельности позиций он получает буфер текущего размера. Начальная последовательность позиций копируется в буфер, и устанавливается начальная позиция, подвергающаяся редактированию. Замена точек начинается с этой начальной позиции. Если она не указана в записи данных, то используется значение 1.

Параметр тип подсказки и эха может задавать следующие значения подсказки и (или) эха:

менее 0 — подсказка и эхо зависят от устройства ввода последовательности позиции;

I — отобразить текущую последовательность позиций, используй определенную реализацией технику;

1 — отобразить числовое представление текущей позиции внутри области эха;

3 — отобразить маркер в каждой точке текущей последовательности позиций;

А — отобразить линию, соединяющую следующие друг за другом точки текущей последовательности позиций; разные или большие 5 — резервируются для будущей стандартизации.

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

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

П ip aw с ч а и п с. Запись даяных устройства ввоза последов а телъиост я позиций может содержать иомер начальной позиции, подвергаемой редахгиро-ванию & днапззоэе от 1 до значения параметра число позиций в начальной последовательности позиций плюс I.

Описание функции в соответствии с пп. 2.8.2; 2.8.6.

Ошибки;

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

51 Неверно задан прямоугольник;

140    Указанное устройство ввода отсутствует на станции;

141    Устройство ввода не находится в режиме ЗАПРОС;

144    Запрошенный тип подсказки и эха не поддерживается на данной станции;

145    Область эха находится за пределами пространства изображения ;

146    Неверно задано содержимое записи данных;

Страница 124

ГОСТ 27817-88 (СТ СЭВ 6177-88) С 121

152    Неверно задано начальное значение;

153    Число точек в начальной последовательности позиций 6г.;ь-ше размера буфера.

3.7.1.3. ИНИЦИАЛИЗИРОВАТЬ УСТРОЙСТВО ВВОДА ЧИСЛА

СТОТ, СТА К, СГОТ Уровень mb.

INITIALISE VALUATOR.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода числа    (I    .    .    .    п)    Ц;

Вх начальное значение числа    Д;

Вх тип подсказки н эха    (—п . . . —1, 1 . . . п) Ц;

Вх область эха Xmin<Xmax,    Ymin<Ymax КУ 4ХД;

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

Действие:

Начальное значение числа, тип подсказки н эха. область эха и запись данных устройства ввода чисел заносятся в таблицу состояния станции.

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

Параметр тип подсказки и эха задает следующие значения подсказки и (или) эха:

менее 0 — подсказка н эхо зависят от устройства ввода числа;

1    — обозначить текущее значение устройства ввода числа, ис

пользуя определенную реализацией технику;

2    — обозначить текущее значение устройства ввода числа, ото

бражая его графическое представление в области эха (например круглую или линейную шкалу с указателем );

3    — обозначить текущее значение устройства ввода числа, ото

бражая его числовое представление внутри области эха; равшые или большие 4— резервируются для будущей стандартизации.

Описание функции в соответствии с пп. 2.8.2; 2.8.6.

Ошибкп:

7 ЯГС не находится в одном из состояний СТОТ. СТАК хли СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

51 Неверно задан прямоугольник;

140    Указанное устройство ввода отсутствует на станции;

141    Устройство ввода не находится в режиме ЗАПРОС;

Страница 125

С 122 ГОСТ 27817-88 (СТ СЭВ 6177-85)

144    Запрошенный тип подсказки н...эха не поддерживается на данной станции;

145    Область эха находится за пределами пространства кзобра-,

женин;    .    >

146    Неверно задано содержимое записи данных;

152 Неверно задано начальное значение.

3.7.1.4. ИНИЦИАЛИЗИРОВАТЬ УСТРОЙСТВО ВЫБОРА

СТОТ, СТАК, СГОТ Уровень mb.

INITIALISE CHOICE.

Параметры;

Вх идентификатор станции    И;

Вх номер устройства выбора    (1 . . . и)    Ц;

Вх начальное состояние    (ЕСТЬ, НЕТ ВЫБОРА)    П;

Вх начальный номер альтернативы    (1 . . . п)    Ц;

Вх тип подсказки и эха    (—п ... —1, 1 ... п)    Ц;

Вх область эха Xmm<Xinax, Ymjn<Ymax КУ 4ХД;

Вх запись данных устройства выбора    О.

Действие;

Начальный номер альтернативы, начальное состояние, тип подсказки и эха, область эха и запись данных устройства выбора заносятся в таблицу состояния станции.

Параметр тип подсказки и эха задает следующие значения подсказки и (или) эха:

менее 0 — подсказка и эхо зависят от устройства выбора;

1    — обозначить текущий номер альтернативы, используя опре

деленную реализацией технику;

2    — использовать встроенные возможности подсказки физиче

ского устройства вводз. Первое поле в записи данных устройства выбора содержит число альтернатив. Это значение сравнивается с заданным при реализации в таблице описания станции максимальным числом альтернатив. Если максимальное число превышено, то формируется сообщение об ошибке. Второе поле в записи данных устройства выбора содержит массив подсказки. Если i-й элемент массива подсказки, заданного параметром запись данных устройства выбора, имеет значение ВЫКЛЮЧЕНО,то подсказка i-й альтернативы заданного устройства выбора выключена. Значение ВКЛЮЧЕНО соответственно указывает, что подсказка данной альтернативы включена;

3    — позволяет оператору указать номер альтернативы путем

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

Страница 126

ГОСТ 27817-88 (СТ СЭВ 6177-88> С. 123

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

4    — позволяет оператору указать номер альтернативы путем

набора с помощью альфавитно-цифровой клавиатуры одной строки из набора строк текста, предоставленных для выбора. Строки текста содержатся в записи данных устройства выбора и могут быть отображены внутри области эха в качестве подсказки. Строка текста, набранная оператором с помощью алфавитно-цифровой клавиатуры, отображается в области эха в качестве эха. Значением логических ьходных данных является номер набранной оператором строки. Первое поле в записи данных устройства выбора содержит число предоставленных для выбора строк. Это число сравнивается с заданным при реализации, содержащимся в таблице описания станции максимальным числом альтернатив для этого устройства. Если максимальное число превышено, то формируется сообщение об ошибке. Второе поле в записи данных устройства выбора содержит массив строк текста, предоставленных для выбора;

5    - запись данных устройства альтернативы определяет имя

сегмента. Сегмент изображается внутри области эха путем привязки единичного квадрата [0 . , 1.]х [0 . , 1 ,| пространства НК к области эха. Идентификаторы выбора элементов в сегменте привязываются к номерам альтернатив, зависящим от устройства выбора способом. Указание элементов сегмента приводит к выбору соответствующей альтернативы. Первое поле в записи данных устройства выбора содержит имя сегмента;

ранные или большие 6—резервируются для будущей стандар-язации.

Описание функции в соответствии с пп. 2.8.2; 2.8.6.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

51 Неверно задан прямоугольник;

140    Указанное устройство ввода отсутствует на станции;

141    Устройство ввода не находится в режиме ЗАПРОС;

Страница 127

С. J24 ГОСТ 27SI7—&S (СТ СЭВ 6177—88)

144    Запрошенный тип подсказки и эха не поддерживается на

данной станции;

145    Область эха находится за пределами пространства изобра

жения;

146 Неверно задано содержимое записи данных;

152 Неверно задано начальное значение.

3.7.1.5. ИНИЦИАЛИЗИРОВАТЬ УСТРОЙСТВО УКАЗАНИЯ

СТОТ, СТАК, СГОТ Уровень lb.

INITIALISE PICK.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства указания    (1 . . . п) Ц;

Вх начальное состояние    (ЕСТЬ, НЕТ УКАЗАНИЯ)    П;

Вх начальное имя сегмента    И;

Вх начальный идентификатор    указания    И;

Вх тип подсказки и эха    (—п ... —1, I ... п)    Ц;

Вх область эха Xmin<Xmax, Ymin<Ymax КУ 4ХД; Вх запись данных устройства    указания    О.

Действие:

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

Параметр тип подсказки и эха задает следующие значении подсказки и (или) эха:

менее 0 — подсказка и эхо зависят от реализации логического устройства указания;

! — используется зависящая от реализации техника подсказки и эха, которая выделяет указанный примитив на короткий промежуток времени;

2    — отображаются эхом указанный примитив вместе со смеж

ной группой примитивов с тем же идентификатором указания или вместе со всеми примитивами сегмента с тем же идентификатором указания;

3    - отображается эхом весь сегмент, содержащий указанный

примитив;

разные или большие 4 — резервируются для будущей етамдзрти-эацни.

Описание функции в соответствии с пп. 2.8.2; 2.8.6.

Ошибки:

7 ЯГС не находится » одном из состояний СТОТ. СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

37 Указанная станция не является станцией ввода-вывода;

51 Неверно задан прямоугольник;

Страница 128

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 125

140    Указанное устройство ввода отсутствует на станции;

141    Устройство ввода не находятся в режиме ЗАПРОС;

144    Запрошенный тип подсказки и эха не поддерживается на данной станции;

145    Область эха находится за пределами пространства изображения;

146    Неверно задано содержимое записи данных;

152 Неверно задано начальное значение

3.7.1.6. ИНИЦИАЛИЗИРОВАТЬ    УСТРОЙСТВО ВВОДА

СТРОКИ

СТОТ, СТАК, СГОТ Уровень mb.

INITIALISE STRING.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода строки    (1 . . . п) Ц;

Вх начальное значение строки    С;

Вх тип подсказки и эха    (—п . . . —1, I . . . п) Ц:

Вх область эха Xmin<Xmax, Ymin<Ymax КУ 4ХД;

Вх запись данных устройства ввода строки    О.

Действие:

Начальное значение строки, тип подсказки и эха. область эха и запись данных устройства ввода строки заносятся » таблицу состояния станции.

Первое поле записи данных устройства ввода строки должно содержать размер буфера входных данных. Это число сравнивается с определенным при реализации н содержащимся в таблице описания станции «максимальным рззыером буфера входных данных» этого устройства. Пели запрошенный размер буфера больше, то он заменяется ка «максимальный размер буфера входных данных* в запоминаемой записи данных. Если начальное значение текста длиннее размера буфера, то формируется сообщение об ошибке.

Второе поле записи данных устройства ввода строки должно содержать начальную позицию курсора — целое в диапазоне от 1\ до длины начального значения строки плюс I.

При запуске процесса измерения устройства ввода строки он получает буфер текущего размера. Начальное значение строки копируется в буфер, и курсор помещается в начальную позицию. Замена литер начинается с этой позиции.

Параметр тип подсказки и эха залает следующие значения подсказки и (или) эха:

менее 0 — подсказка и эхо зависят от реализации устройства ввода строки;

1 — отобразить текущее значение устройства ввода строки внутри области эха;

равные или большие 2 — резервируются для будущей стандартизации.

Страница 129

С. 126 ГОСТ 27817—«8 (СТ СЭВ 6177-88)

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

Описание функции в соответствии с пп. 2.8.2; 2.8.6.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАХ или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

51 Неверно задан прямоугольник;

140    Указанное устройство ввода отсутствует на станции;

141    Устройство ввода не находится в режиме ЗАПРОС;

144    Запрошенный тип подсказки и эха не поддерживается на данной станции;

145    Область эха находится за пределами пространства изображения;

146    Неверно задано содержимое записи данных;

152 Неверно задано начальное значение;

154 Длина начальной строки больше, чем размер буфера.

3.7.2. Функции задания режима работы устройства ввода 3.7.2.1. ЗАДАТЬ РЕЖИМ УСТРОЙСТВА ВВОДА ПОЗИЦИИ

СТОТ, СТАК, СГОТ У ревев пЪ.

SET LOCATOR MODE.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода позиции    (1 . . . п) Ц;

Вх режим работы (ЗАПРОС, ОПРОС, СОБЫТИЕ)

Вх выключатель эха    (ЭХО,    БЕЗ ЭХА) П;

Действие:

Заданное устройство ввода позиции переводится з указанный режим паботы, и состояние эха устанавливается в положение 3X0 или БЕЗ ЭХА. В зависимости от указанного режима работы начинается или заканчивается взаимодействие с данным устройством свода. Состояние устройства ввода, определяемое параметрами режим работы и выключатель эха, заносится в таблицу состояния станции в иоле, соответствующее заданному устройству зве^э позиции.

Описание функции в соответствии с пп. 2 8 I; 2.8.3,

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК ‘V.и СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

Страница 130

ГОСТ 27817-ад (ОТ СЭВ 6177 -88) С. 127

38 Указанная станция не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

143 Режимы ОПРОС и СОБЫТИЕ не доступны на данном уровне Я ГС;

3.7.2.2.    ЗАДАТЬ РЕЖИМ УСТРОЙСТВА ВВОДА ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ

СТОТ, СТА К, СГОТ Уровень mb.

SET STROKE MODE Параметры:

Bx идентификатор станции    И;

Вх номер устройства ввода

последовательности позиций    (1 . . . п) Ц;

Зх режим работы (ЗАПРОС, ОПРОС. СОБЫТИЕ) П; Вх выключатель эха    (ЭХО,    БЕЗ    ЭХА) П;

Действие:

Заданное устройство ввода последовательности позиций переводится в указанный режим работы, и состояние эха устанавливаемся в положение ЭХО или БЕЗ ЭХА. В зависимости от указанного режима работы начинается или заканчивается взаимодействие с данным устройством ввода. Состояние устройства ввода, определяемое параметрами режим работы и выключатель эха, заносится в таблицу состояния станции в иоле, соответствующее заданному устройству ввода последовательности позиций.

Описание функции в соответствии с пп. 2.8.1; 2.8.3.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

143 Режимы ОПРОС и СОБЫТИЕ не доступны на данном уровне ЯГС.

3.7.2.3.    ЗАДАТЬ РЕЖИМ УСТРОЙСТВА ВВОДА ЧИСЛА

СТОТ. СТАК, СГОТ Уровень mb.

SET VALUATOR MODE.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода числа    (I . . . п) Ц;

Вх режим работы (ЗАПРОС, ОПРОС. СОБЫТИЕ) П; Вх выключатель эха    (ЭХО.    БЕЗ    ЭХА) П.

Действие:

Заданное устройство ввода числа перезолится в указанный ре-работы, н состояние эха устанавливается в положение ЭХО

Страница 131

С. 328 ГОСТ 27817-88 (СТ СЭВ 6177-88)

или БЕЗ ЭХА. В зависимости от указанного режима работы начинается или заканчивается взаимодействие с данным устройством ввода. Состояние устройства ввода, определяемое параметрами режим работы и выключатель эха, заносится в таблицу состояния станции в поле, соответствующее заданному устройству ввода числа.

Описание функции в соответствии с пп. 2.8.1; 2.8.3.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

143 Режимы ОПРОС и СОБЫТИЕ не доступны на данном уровне ЯГС.

1    3.7.2.4.    ЗАДАТЬ    РЕЖИМ    УСТРОЙСТВА    ВЫБОРА

СТОТ. СТАК, СГОТ Уровень mb.

SET CHOICE MODE.

Параметры:

Bx идентификатор станции    И;

Вх номер устройства выбора    (1    . . . п) Ц;

- Вх режим работы (ЗАПРОС, ОПРОС. СОБЫТИЕ) П;

Вх выключатель эха    (ЭХО,    БЕЗ    ЭХА)    П;

Действие:

Заданное устройство выбора переводится в указанный режим работы, и состояние эха устанавливается в положение ЭХО или БЕЗ ЭХА. В зависимости от заданного режима работы начинается или заканчивается взаимодействие с данным устройством ввода. Состояние устройства ввода, определяемое параметрами режим работы и выключатель эха, заносится в таблицу состояния станции в поле, соответствующее заданному устройству выбора.

Описание функции в соответствии с пп. 2.8.1; 2.8.3.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или. СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция ке открыта;

38 Указанная станции не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

143 Режимы ОПРОС и СОБЫТИЕ не доступны на данном уровне ЯГС.

3.7.2.5. ЗАДАТЬ РЕЖИМ УСТРОЙСТВА УКАЗАНИЯ »    СТОТ.    СТАК,    СГО'Г    Уровень    lb.

Страница 132

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 129

SET PICK MODE.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства указания    (1 . . . п) Ц;

Вх режим работы (ЗАПРОС, ОПРОС. СОБЫТИЕ) П;

Вх выключатель эха    (ЭХО,    БЕЗ    ЭХА)    П.

Действие:

Заданное устройство указания переводится в указанный режим работы, и состояние эха устанавливается в положение ЭХО или БЕЗ ЭХА. В зависимости от заданного режима работы начинается, или заканчивается взаимодействие с данным устройством. Состоя ние устройства ввода, определяемое параметрами режим работы и выключатель эха, заносится в таблицу состояния станции в поле, соответствующее данному устройству указания.

Описание функции в соответствии с пп. 2.8.1; 2.8.3.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ. СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

37 Указанная станция не является станцией ввода-вывода:

140 Указанное устройство ввода отсутствует на станции;

143 Режимы ОПРОС и СОБЫТИЕ не доступны на данном уровне ЯГС.

3.7.2.6. ЗАДАТЬ РЕЖИМ УСТРОЙСТВА ВВОДА СТРОКИ

СТОТ. СТАК, СГОТ Уровень mb.

SET STRING MODE.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства указания    (1    .    .    . п) Ц;

Вх режим работы (ЗАПРОС, ОПРОС, СОБЫТИЕ) П;

Вх выключатель эха    (ЭХО,    БЕЗ    ЭХА)    П.

Действие:

Заданное устройство ввода строки переводится в указанный режим работы, и состояние эха устанавливается в положение ЭХО или БЕЗ ЭХА. В зависимости от заданного режима работы начинается или заканчивается взаимодействие с данным устройством. Состояние устройства ввода, определяемое параметрами режим работы и выключатель эха, заносится в таблицу состояния станции в иоле, соответствующее данному устройству ввода строки.

Описание функции в соответствии с пп. 2.8.1; 2.8.3.

•Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;    »

Страница 133

С. 130 ГОСТ 27817-38 (СТ СЭВ «177-88)

38 Указанная станция не является станцией ввода и.1и ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

ИЗ Режимы ОПРОС и СОБЫТИЕ не доступны на данном уровне ЯГС.

3.7.3. Функции ввода в режиме ЗАПРОС

3.7.3.1.    ЗАПРОСИТЬ ВВОД ПОЗИЦИИ

СТОТ. СТА К, С ГОТ Уровень mb.

REQUEST LOCATOR.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода позиции    (1 . . . п) И;

Вых состояние    (ЕСТЬ,    ОТБОИ)    П;

Вых номер преобразования нормирования (0 . . . n) II;

Вых позиция    МК Т.

Действие:

Выполняется ввод в режиме ЗАПРОС на заданном устройстве. Если оператор выполняет специальное действие отмены ввода — «отбой», то в параметре состояние возвращается значение ОТБОП. Иначе возвращается значение ЕСТЬ, а в параметрах номер преобразования нормирования и позиция — значение логического ввода (текущее измерение устройства ввода позиции). Позиция возвращается в мировых координатах, номер преобразования нормирования соответствует преобразованию, которое использовалось для перевода позиции в мировые координаты. Позиция лежит внутри окна, соответствующего этому преобразованию нормирования.

Описание функции в соответствии с пп. 2.6.4; 2.8.1; 2.8.3; 2.8.1.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК ея:j СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или вводг-вывода;

140    Указанное устройство ввода отсутствует на станции;

141    Устройство ввода не находится в режиме ЗАПРОС.

3.7.3.2.    ЗАПРОСИТЬ ВВОД ПОСЛЕДОВАТЕЛЬНОСТИ ПО-ЗИЦИЙ

СТОТ, СТАК, СГОТ Уровень mb.

REQUEST STROKE.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода

последовательности позиций    (1    .    .    .    n)    И;

Вых состояние    (ЕСТЬ,    ОТБОЙ)    П;

Вых номер преобразования нормирования    (0    .    .    .    n)    Li;

Страница 134

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. i3-t

Вых число позиций    (0 . . . п) Ц;

Вых последовательность позиций    МК    пХТ.

Действие:

Выполняется ввод в режиме ЗАПРОС на заданном устройстве. Если оператор выполняет специальное действие отмены ввода— «отбой», то в параметре состояние возвращается значение ОТБОП. Иначе возвращается значение ЕСТЬ, а в параметрах номер преобразования нормирования, число позиций и последовательность позиции — значение логического ввода (текущее измерение устройства ввода последовательности позиций). Позиции возвращаются в мировых координатах, номер преобразования нормирования соо7-ветствует преобразованию, которое использовалось для перевода позиций в мировые координаты. Все позиции последовательности лежат внутри окна, соответствующего этому преобразованию нормирования. Число позиций не превышает «размера буфера входных данных», указанного в записи данных устройства ввода последовательности позиций в таблице состояния станции (для данного устройства).

Примечание. Если количество вводимых гочек превышает «размер буфера входных данных», то дополнительные точки теряются. Оператору сообщается об этом.

Описание функции в соответствии с пп. 2.6.5; 2.8.1; 2.8.2; 2.8.3; 2.8.4.

Ошибки;

7 ЯГС не находится в одном из состояний СТОТ, СТАК или С ГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или вводг-вывода;

140    Указанное устройство ввода отсутствует на станции;

141    Устройство ввода не находится в режиме ЗАПРОС.

3.7.3.3. ЗАПРОСИТЬ ВВОД ЧИСЛА

СТОТ. СТАК, С ГОТ Уровень mb.

REQUEST VALUATOR.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода числа    (1    .    .    .    п)    Ц;

Вых состояпие    (ЕСТЬ, ОТБОЙ) П;

Вых значение числа    Д.

Действие:

Выполняется ввод в режиме ЗАПРОС на заданном устройстве. Если оператор выполняет специальное действие отмены ввода — «отбой», то в параметре состояние возвращается значение ОТБОЕ. Иначе возвращается значение ЕСТЬ, а в параметре значение числа — значение логического ввода (текущее измерение устройств

Страница 135

С. !32 ГОСТ 27817-88 (СТ СЭВ 6177-88)

ивода числа), которое находится в диапазоне, определенном в записи данных устройства ввода числа в таблице состояния станции <для данного устройства).

Описание функции в соответствии с пп. 2.8.1; 2.8.2; 2.8.3; 2.8.4. Ошибки:

7 ЯГС »:е находится в одном из состояний СТОТ. СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

.40 Указанное устройство ввода отсутствует на станции;

S41 Устройство ввода не (находится в режиме ЗАПРОС.

5.7.3.4.    ЗАПРОСИТЬ ВЫБОР

СТОТ. СТАК. СГОТ Уровень mb.

REQUEST CHOICE.

Параметры:

Вх идентификатор станции    И;

1х номер устройства выбора    (1 . . . п)    Ц;

Ьых состояние    (ЕСТЬ.    ОТБОЙ. НЕТ ВЫБОРА) П;

Вых номер альтернативы    (1 . . . п)    Ц.

Действие:

Выполняется ввод в режиме ЗАПРОС на заданном устройстве. Если оператор выполняет специальное действие отмены ввода— «отбой», то в параметре состояние возвращается значение ОТБОИ. Если измерение устройства выбора определяет отсутствие выбора, в параметре состояние возвращается значение НЕТ ВЫБОРА. Иначе возвращается значение ЕСТЬ вместе с номером выбранной альтернативы. являющимся значением логического ввода (текущим измерением устройства выбора).

Описание функции в соответствии с по. 2.8.1; 2.8.2; 2.8.3; 2.8.4. Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

140    Указанное устройство ввода отсутствует на станции;

141    Устройство ввода не находится в режиме ЗАПРОС.

3.7.3.5.    ЗАПРОСИТЬ УКАЗАНИЕ

СТОТ. СТАК. СГОТ Уровень lb.

REQUEST PICK.

Параметры:

Вх идентификатор станции    И;

Зх номер устройства указания    (I    .    .    . п) Ц;

Страница 136

ГОСТ 27817-88

Вых состояние (ЕСТЬ. ОТБОП. НЕТ УКАЗАНИЯ) П;

Вых имя сегмента    И;

Вых идентификатор указания    И.

Действие:

Выполняется ввод в режиме ЗАПРОС на заданном устройстве. Если оператор выполняет специальное действие отмены ввода — «отбой», то в параметре состояние возвращается значение ОТВОЙ. Если измерение устройства указания определяет отсутствие указания, то в параметре состояние выдается значение НЕТ УКАЗАНИЯ. Иначе возвращается значение ЕСТЬ, а в параметрах имя сегмента и идентификатор указания — значение логического ввода (текущее измерение устройства указания).

Описание функции в соответствии с пп. 2.8.1; 2.8.2; 2.8.3; 2.8.4.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

37    Указанная станция не является станцией ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

14? Устройство ввода не находится в режиме ЗАПРОС.

3.7.3.6. ЗАПРОСИТЬ ВВОД СТРОКИ

СТОТ. СТАК. СГОТ Уровень mb.

REQUEST STRING.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода строки    (1 . . . п) Ц;

Вых состояние    (ЕСТЬ,    ОТБОИ) П;

Вых строка литер    С.

Действие:

Выполняется ввод в режиме ЗАПРОС на заданном устройстве. Если оператор выполняет специальное действие отмены ввода — «отбой», то в параметре состояние возвращается значение ОТБОП, Иначе возвращается значение ЕСТЬ, а в параметре строка литер -значение логического ввода (текущее измерение устройства ввода строки).

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

Описание функции в соответствии с пи. 2.8.1; 2.8.2; 2.8.3; 2.8.4.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ. СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38    Указанная станция не является станцией ввода или ввода-вывода;

Страница 137

С. 1Ъ4 ГОСТ 278I7-8S (СТ СЭВ 6I77-&S)

140    Указанное устройство ввода отсутствует на станции;

141    Устройство ввода не находится в режиме ЗАПРОС.

3.7.4. Функции ввода о режиме ОПРОС

3.7.4.1.    ОПРОСИТЬ ВВОД ПОЗИЦИИ

СТОТ, СТАК, СГОТ Уровень тс.

SAMPLE LOCATOR.

Параметры:

Вх идентификатор станции    И

Вх номер устройства ввода позиции    (1 . . . п)    Ц

Вых номер преобразования нормирования    (0 . . . п)    Ц

Вых позиция    МК    Т.

Действие:

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

Описание функции ь соответствии с пп. 2.6.4; 2.8.1; 2.8.3; 2.8.4.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ. СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода и.ти ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

142    Устройство ввода не находятся в режиме ОПРОС.

3.7.4.2.    ОПРОСИТЬ ВВОД ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ

СТОГ. СТАК. СГОТ Уровень тс.

SAMPLE STROKE.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода

последовательности позиций    (1 .    .    .    п)    Ц;

Вых номер преобразования нормирования    (0 .    .    .    п)    Ц;

Вых число позиций    (0 .    .    .    Ц;

Вых последовательность позиций    МК    пХТ.

Действие:

В параметрах номер преобразоваашя нормирования, число позиций и последовательность позиций возвращается значение логи* ческого ввода — текущее измерение устройства ввода последовательности позиций. Позиции возвращаются в мировых координатах, номер преобразования нормирования соответствует преобразо-

Страница 138

гост 27817-88 (СТ СЭВ «177—88) С. 135

ванню, которое использовалось для перевода позиций в мировые координаты. Все позиции последовательности лежат внутри окна, соответствующего этому преобразованию нормирования. Число позиций не превышает «размера буфера входных данных», указанного в записи данных устройства ввода последовательности позиций в таблице состояния станции (для данного устройства).

Примерам а е. Если вшнчеегео введенных позиций превышает <раз*ер буфера входных данных», то досолннтсльяые позиции теряются. Оператору сообщается об этом.

Описание функции в соответствии с пп. 2.6.5; 2.8.1; 2.8.3; 2.8.4.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

142 Устройство ввода не находится в режиме ОПРОС.

3.7.4.3.    ОПРОСИТЬ ВВОД ЧИСЛА

СТОТ. СТАК. СГОТ Уровень тс.

SAMPLE VALUATOR.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода числа    (1    .    . . п) Ц;

Вых значение числа    Д»

Действие:

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

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

142 Устройство ввода не находится в режиме ОПРОС.

3.7.4.4.    ОПРОСИТЬ ВЫБОР

СТОТ, СТАК, СГОТ Уровень tnc.

SAMPLE CHOICE.

Параметры:

Вх идентификатор станции    И;

5 Зак. 2214

Страница 139

С 136 ГОСТ 27817-88 (СТ СЭВ 6177—88)

Вх номер устройства выбора    (1 . . . п)    Ц;

Вых состояние    (ЕСТЬ.    НЕТ    ВЫБОРА)    П;

Вых номер альтернативы    (1 . . . п)    Ц.

Действие:

Если измерение устройства выбора определяет отсутствие выбора, то в параметре состояние возвращается значение НЕТ ВЫБОРА. Иначе возвращается значение ЕСТЬ вместе с помером выбранной альтернативы, являющимся значением логического ввода — текущим измерением устройства выбора.

Описание функции в соответствии с пп. 2.8.1; 2.8.3; 2.8.4. Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

142 Устройство ввода не находится в режиме ОПРОС.

3.7.4.5.    ОПРОСИТЬ УКАЗАНИЕ

СТОТ, СТАК. СГОТ Уровень I с.

SAMPLE PICK.

Параметры:

Вх идентификатор станции    И

Вх номер устройства указания    (I . . . п) Ц

Вых состояние    (ЕСТЬ,    НЕТ    УКАЗАНИЯ)    П

Вых имя сегмента    И

Вых идентификатор указания    И.

Действие:

Если измерение устройства указания определяет отсутствие указания, то в параметре состояние выдается значение НЕТ УКАЗАНИЯ. Иначе возвращается значение ЕСТЬ, а в параметрах имя сегмента и идентификатор указания возвращается зиачение логического ввода — текущее измерение устройства указания. Описание функции в соответствии с пп. 2.8.1; 2.8.3; 2.8.4. Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станцнн;

25 Указанная станция не открыта;

37 Указанная станция не является станцией ввода-вывода; 140 Указанное устройство ввода отсутствует на станции;

142 Устройство ввода не находится в режиме опроса;

142 Устройство ввода не находится в режиме ОПРОС.

3.7.4.6.    ОПРОСИТЬ ВВОД СТРОКИ

СТОТ, СТАК, СГОТ Уровень тс.

Страница 140

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 137

SAMPLE STRING.

Параметры:

Вх идентификатор станции    И;

Вх номер устройства ввода строки    (1 . . . п) Ц;

Вых строка литер    С.

Действие:

В параметре строка литер возвращается значение логического ввода — текущее измерение устройства ввода строки.

Примечание. Длина возвращаемой стротсн меньше кли равна размеру буфера. который >«азан в зааисн данных устройства ввода строги в таблице состояния станции {для данного устройства).

Описание функции в соответствии с пп. 2.8.1; 2.8.3; 2.8.4.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода ;

140 Указанное устройство ввода отсутствует на станции;

142 Устройство ввода не находится в режиме ОПРОС.

3.7.5. Функции ввода в режиме СОБЫТИЕ

3.7.5.1. ОЖИДАТЬ СОБЫТИЕ

СТОТ, СТАК, СГОТ Уровень тс.

AWAIT EVENT.

Параметры:

Вх время ожидания (секунды)    Д;

Вых идентификатор станции    И;

Вых класс устройства ввода

(НЕТ. ВВОД ПОЗИЦИИ. ВВОД ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИЙ, ВВОД ЧИСЛА. ВЫБОР, УКАЗАНИЕ. ВВОД СТРОКИ)    П;

Вых номер устройства звода    (1    .    .    . п) Ц.

Действие:

Если очередь событий пуста, то ЯГС переходит в состояние ожидания до тех пор, пока либо не произойдет событие — ввод данных, и сообщение об этом событии не поступит в очередь, либо не истечет время ожидания.

Если время ожидания истекло, а очередь пуста, то в параметре класс устройства ввода возвращается значение НЕТ. Если в очереди имеются записи, то самый старый отчет о событии перемещается из очереди событий в поле «отчет о текущем событии» таблицы состояния ЯГС. В параметрах возвращаются идентификатор станции, класс и номер устройства ввода, а соответствующие значения входных данных становятся доступными для получения с домощью функции ПОЛУЧИТЬ <класс устройства ввода>.

Страница 141

С 138 ГОСТ 27817-88 (СТ СЭВ 6177-88)

Примечания:

1.    Операция выполняется н в случае наличия ошибки 147.

2.    Если время ожидания равно иулю, то осуществляется немедленная проверяя очереди, и есла очередь пуста, воаюрашаетея зиачеикс НЕТ.

3.    Некоторые операционные системы не обеспечивают надежной службы вое-кепи. В этом случае при в ром ад и ожидания, отличном от нуля, ЯГС может не выйти из состояния ожидания до тех пор, пока ке 'произойдет событие ввода ланиых.

Описание функции в соответствии с пп. 2.8.1; 2.8.3; 2.8.5. Ошибки:

7 Я'ГС не находится в состоянии СТОТ, СТАК или СГОТ; 147 Очередь событий переполнена;

151 Не верно задано время ожидания.

3.7.5.2.    УДАЛИТЬ СОБЫТИЯ ОТ УСТРОЙСТВА

СТОТ, СТАК, СГОТ Уровень тс.

FLUSH DEVICE EVENTS.

Параметры:

Вх идентификатор станции    И;

Вх класс устройства ввода

(ВВОД ПОЗИЦИИ. ВВОД ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ, ВВОД ЧИСЛА, ВЫБОР. УКАЗАНИЕ. ВВОД СТРОКИ)    П;

Вх номер устройства ввода    (1    .    .    . п) Ц.

Действие:

Все отчеты о событиях для указанного устройстве ввода удаляются из очереди событий.

Примечание. Операция выполняется и в случае наличия ошибки 147. Описание функции о соответствии с п. 2.8.5.

Ошибки;

7 ЯГС не находится в одном из состояний СТОТ. СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции;

147 Очередь событий переполнена.

3.7.5.3.    ПОЛУЧИТЬ ПОЗИЦИЮ

СТОТ, СТАК, СГОТ Уровень тс.

GET LOCATOR.

Параметры:

Вых номер преобразования нормирования (0 . . . п) Ц; Вых позиция    МК    Т.

Действие:

В,параметрах номер преобразования и позиция возвращается значение логического ввода из отчета о текущем событии. Пози-

Страница 142

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. '39

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

Описание функции в соответствии с пп. 2.6.4; 2.8.4; 2.8.5.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

150 Значение ввода данного класса отсутствует в отчете о текущем событии.

3.7.5.4.    ПОЛУЧИТЬ ПОСЛЕДОВАТЕЛЬНОСТЬ ПОЗИЦИЙ

СТОТ, СТАК, СГОТ Уровень тс.

GET STROKE.

Параметры:

Вых номер преобразовании нормирования (0 . . . п)    Ц;

Вых число позиций    (0 . . . п)    Ц;

Вых последовательность позиций    МК    пХТ.

Действие:

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

Примечание. Если количество «веденных .позиций прс-вышает тер буфера входных данных», то дополнительные точки теряются. Оператору сообщается об этом

Описание функции в соответствии с пп. 2.8.4; 2.8.5.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

150 Значение ввода данного класса отсутствует в отчете о текущем событии.

3.7.5.5.    ПОЛУЧИТЬ ЧИСЛО

СТОГ, СТАК, СГОТ Уровень тс.

GET VALUATOR.

Параметры:

Вых значение числа    Д

Действие:

В параметре значение числа возвращается значение логичес-

Страница 143

С 140 ГОСТ 27817-88 (СТ СЭВ 6177-88)

кого ввода из отчета о текущем событии. Это число находится в диапазоне, определенном в записи данных устройства ввода числа в таблице состояния станции (для данного устройства). Описание функции в соответствии с пп. 2.8.4; 2.8.5.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ. СТАК или СГОТ;

. 150 Значение ввода данного класса отсутствует в отчете о текущем событии.

3.7.5.6.    ПОЛУЧИТЬ ВЫБОР

СТОТ. СТАК, СГОТ Уровень тс.

GET CHOICE.

Параметры:

Вых состояние    (ЕСТЬ.    НЕТ    ВЫБОРА)    Г1;

Вых номер альтернативы    (I    .    .    . п) Ц.

Действие:

Из отчета о текущем событии выдается значение логического ввода, состоящее из состояния и номера выбранной альтернативы. Описание функции в соответствии с пп. 2.8.4; 2.8.5.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ. СТАК или СГОТ;

150 Значение ввода данного класса отсутствует в отчете о текущем событии.

3.7.5.7.    ПОЛУЧИТЬ УКАЗАНИЕ

СТОТ, СТАК, СГОТ Уровень 1с.

GET PICK.

Параметры:

Вых состояние    (ЕСТЬ,    НЕТ УКАЗАНИЯ) П;

Вых имя сегмента    И;

Вых идентификатор указания    И.

Действие:

Из отчета о текущем событии выдается значение логического ввода, состоящее из состояния, имени сегмента и идентификатора

указания.

Описание функции в соответствии с пп. 2.8.4; 2.8.5.

Ошибки:

7 ЯГС не находится в одном аз состояний СТОТ, СТАК или СГОТ;

350 Значение ввода данного класса отсутствует в отчете о текущем событии.

З.Г.5.8. ПОЛУЧИТЬ СТРОКУ

СТОТ, СТАК, СГОТ Уровень тс.

GET STRING.

Параметры:

Вых строка литер    С.

Страница 144

ГОСТ 27817-88 (СТ СЭВ 6177-SS* С. 141

Действие:

В параметре строка литер возвращается значение логического ввода из отчета о текущем событии.

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

Описание функции в соответствии с пп. 2.8.4; 2.8.5.

Ошибки:

7 ЯГС не находится в одном из состоянии СТОТ, СТАК или СГОТ;

150 Значение ввода данного класса отсутствует в отчете о текущем событии.

3.8. Функции метафайла

3.8.1.    ЗАПИСАТЬ В МЕТАФАЙЛ

СТАК, СГОТ Уровень 0а.

WRITE ITEM ТО GKSM.

Параметры:

Вх идентификатор    станции    И;

Вх тип записи    Ц;

Вх длина записи данных    (0    .    .    .    п)    Ц;

Вх запись данных    О.

Действие:

Запись, содержащая неграфические данные, заносится в метафайл.

Примечание. Графические данные посылаются в метафайл автоматически, когда станция вывода метафайла актквЕа.

Описание функции в соответствии с п. 4.9.

Ошибки:

5 ЯГС не находится з состоянии СТАК или СГО'Г;

20 Неверно задан идентификатор станции;

30 Указанная станция не активна;

32 Указанная станиия не является станцией вывода мета* файла ЯГС;

160    Тип записи не разрешен для записи пользователя;

161    Неправильная длина записи.

3.8.2.    ПОЛУЧИТЬ ТИП ЗАПИСИ ИЗ МЕТАФАЙЛА

СТОТ, СТАК, СГОТ Уровень 0а.

GET ITEM TYPE FROM GKSM.

Параметры:

Вх идентификатор станции    И:

Вых тип записи    Ц;

Вых длина записи данных    (0    .    .    .    п)    Ц.

Действие:

ЯГС проверяет тип и длину текущей записи в метафайле и возвращает их в соответствующих параметрах прикладной программе.

Страница 145

С. М2 ГОСТ 27817-88 (СТ СЭВ «177-88)

Описание функции в соответствии с п. 4.9.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

34 Указанная станция не является станцией ввода метафайла ЯГС;

162    В метафайле ввода ЯГС не осталось больше записей;

163    Неправильная запись в метафайле.

3.8.3.    ПРОЧИТАТЬ ЗАПИСЬ МЕТАФАЙЛА

СТОТ. СТАК. СГОТ Уровень 0а.

READ ITEM FROM GKSM.

Параметры:

Bx идентификатор станции    И;

Вх максимальная длина записи    (0    .    .    .    п)    Ц;

Вых запись данных    О.

Действие:

ЯГС возвращает прикладной программе текущую запись метафайла и затем переходит к следующей записи. Если длина записи больше максимальной длины, то часть записи теряется.

Примечание. Бс.вд максимальная длина ззписи ргоиа кулю. запись пропускается без считывания.

Описание функции в соответствии с п. 4.9.

Ошибки:

7 ЯГС не находится в одном из состояний СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

М Указанная станция не является станцией ввода метафайла ЯГС;

162    В метафайле взода ЯГС не осталось больше записей;

163    Неправильная запись в метафайле;

165    Содержимое записи данных не соответствует указанному типу записи;

166    Неверно задана максимальная длина записи данных.

3.8.4.    ИНТЕРПРЕТИРОВАТЬ ЗАПИСЬ

ГЯОТ. СТОТ. СТАК. СГОТ Уровень 0а.

INTERPRET ITEM.

Параметры:

Вх тип записи    Ц;

Вх длина записи    (0    .    .    .    п)    Ц;

Вх запись данных    О.

Действие:

Зз«нсь интерпретируется. Это вызывает соответствующие из-

Страница 146

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. МЭ

менения в переменных состояния ЯГС и генерацию соответствующих примитивов вывода согласно спецификациям метафайла.

Примечание. Кроме ошибок, перечисленных ниже, как результат китер* прстааи» домен люгут возникнуть н другие ошибка ЯГС.

Описание функции в соответствии с п. 4.9.

Ошибки:

7 ЯГС не находится в одном из состоянии СТОТ, СТАК или СГОТ;

161 Неправильная длина записи;

163    Неправильная запись в метафайле;

164    Неправильный тип записи метафайла ЯГС;

165    Содержимое записи данных не соответствует указанному типу записи;

167    Запись пользователя не может быть интерпретирована;

168    Указанная функция не поддерживается на этом уровне ЯГС.

3.9.    Справочные функции

3.9.1.    Общие сведения

3.9.М.    Справочные функции выдают значения из различных таблиц состояния. Типы данных значений н установленные по умолчанию значения полей таблиц состояния кратко описаны в разд. 2. Об ошибках, обнаруженных справочными функциями, сообщается через параметр «индикатор оши6ок> в соответствии с п. 2.11.2. Процедура обработки ошибок не вызывается.

Список состояний в заголовке функции указывает те состояния, в которые справочные функции могут вернуть правильные значения. Некоторые функции, которые выдают значения из таблиц описания станций, имеют входной параметр типа «переселение», который имеет следующие значения:

ЗАДАНО — выдаются значения, предусмотренные прикладной программой;

РЕАЛИЗОВАНО — выдаются значения, идентичные используемым станцией во время преобразования действительных значений в значения, доступные для данной станции.

Справочные функции для заранее определенных полей в таблице состояния станции в соответствии с п. 3.9.6 не имеют такого параметра в отлнчие от соответствующих справочных функций для полей в списке состояний станции в соответствии с п. 3.9.5. Значения заранее определенных полей имеются на станции.

3.9.2.    Справочные функции функционального состояния ЯГС

3.9.2.1. УЗНАТЬ ФУНКЦИОНАЛЬНОЕ СОСТОЯНИЕ

ГЯЗА, ГЯОТ, СТОТ, СТАК. СГОТ Уровень Оа.

INQUIRE OPERATING STATE VALUE.

Параметры:

Вых функциональное состояние

(ГЯЗА, ГЯОТ, СТОТ, СТАК, СГОТ) П.

Страница 147

С 144 ГОСТ 27817-88 (СТ СЭВ 6177-88)

Действие:

Выдается функциональное состояние Я ГС.

Описание функции в соответствии с пп. 2.10.2; 2.11.2.

3.9.3. Справочные функции таблицы описания ЯГС

3.9.3.1.    УЗНАТЬ УРОВЕНЬ ЯГС

Г5ЮТ, СТОТ, СТАК, СГОТ Уровень та. INQUIRE LEVEL OF GKS.

Параметры:

Вых индикатор ошибок    Ц;

Вых уровень ЯГС (0а, ОЬ, Ос, la, lb, 1с, 2а, 2Ь, 2с) П. Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ. Описание функции в соответствии с пп. 2.10J2; 2.11.2.

3.9.3.2.    УЗНАТЬ ДОСТУПНЫЕ ТИПЫ СТАНЦИИ

ГЯОТ. СТОТ. СТАК, СГОТ Уровень 0а. INQUIRE LIST OF AVAILABLE WORKSTATION TYPES. Параметры:

Вых индикатор ошибок    Ц:

Вых число доступных типов станций    (1    .    .    .    п)    Ц;

Вых список доступных типов станций    пХИ.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ. СТОТ, СТАК или СГОТ. Описание функции в соответствии с пп. 2.5.1; 2.11.2.

3.9.3.3.    УЗНАТЬ ДОПУСТИМЫЕ КОЛИЧЕСТВА СТАНЦИЙ

ГЯОТ, СТОТ. СТАК. СГОТ Уровень 1а. INQUIRE WORKSTATION MAXIMUM NUMBERS.

Параметры:

Вых индикатор ошибок    Ц;

Вых максимальное число одновременно

открытых станций    (1    .    .    . п)    Ц;

Бых максимальное число одновременно

активных станций    (1    .    .    . п)    Ц;

Вых максимальное число станций.

связанных с сегментом    (1    .    .    . п)    Ц.

Индикатор ошибок может принимать значения:

.8 ЯГС ие находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ. Описание функции в соответствии с пп. 2.5; 2.11.2

3.9.3.4.    УЗНАТЬ МАКСИМАЛЬНЫЙ НОМЕР ПРЕОБРАЗОВАНИЯ НОРМИРОВАНИЯ

ГЯОТ. СТОТ. СТАК. СГОТ Уровень 0а. INQUIRE MAXIMUM NORMALIZATION TRANSFORMATION NUMBER.

Параметры:

Вых индикатор ошибок    Ц;

Вых максимальный номер преобразования

нормирования    (1    .    .    .    п)    Ц.

Страница 148

ГОСТ 27817-88 (СТ СЭВ 6177—88) С 145

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ.

Описание функции в соответствии с пп. 2.6.1; 2.11.2.

3.9.4. Справочные функции таблицы состояния ЯГС

3.9.4.1.    УЗНАТЬ НАБОР ОТКРЫТЫХ СТАНЦИИ

ГЯОТ. СТОТ, СТАК. СГОТ Уровень Оа. INQUIRE SET OF OPEN WORKSTATIONS.

Параметры:

Вых индикатор ошибок    Ц;

Вых число открытых станций    (0    .    .    .    п)    Ц;

Вых набор открытых станций    пХИ.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии    ГЯОТ. СТОТ,    СТАК    или

СГОТ.

Описание функции в соответствии с пп. 2.5.2; 2.11.2.

3.9.4.2.    УЗНАТЬ НАБОР АКТИВНЫХ СТАНЦИЙ

ГЯОТ. СТОТ, СТАК. СГОТ Уровень 1 я. INQUIRE SET OF AKTIVE WORKSTATIONS.

Параметры:

Вых индикатор ошибок    Ц;

Вых число активных станций    (0    .    .    .    п)    Ц;

Вых набор активных станций    пХИ.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии    ГЯОТ, СТОТ,    СТАК    или

СГОТ.

Описание функции в соответствии с пп. 2.5.2; 2.11.2.

3.9.4.3.    УЗНАТЬ ТЕКУЩИЕ ЗНАЧЕНИЯ АТРИБУТОВ ПРИМИТИВОВ

ГЯОТ, СТОТ, СТАК. СГОТ Уровень та. INQUIRE CURRENT PRIMITIVE ATTRIBUTE VALUES. Параметры:

Вых индикатор ошибок    Ц

Вых текущий индекс ломаной    (1    .    .    .    п)    Ц

Вых текущий индекс полимаркера    (1    .    .    .    п)    Ц

Вых текущий индекс текста    (1    .    .    .    п)    Ц

Вых текущая высота литеры    МК    >0    Д

Вых текущая вертикаль литеры    МК    2ХД

Вых текущая ширина литеры    МК    >0    Д

Вых текущая горизонталь литеры    МК    2ХД

Вых текущее направление текста

(ВПРАВО. ВЛЕВО, ВВЕРХ. ВНИЗ) П Вых текущее выравнивание текста

(ОБЫЧНОЕ. ЛЕВОЕ, ЦЕНТРАЛЬНОЕ. ПРАВОЕ: ОБЫЧНОЕ. ПО ВЕРХУ, ПО ЗАГЛАВНОЙ. ПО СЕРЕДИНЕ. ПО ОСНОВАНИЮ, ПО НИЗУ) 2ХП;

Страница 149

С. 146 ГОСТ 27817-88 (СТ СЭВ 6177—88)

Вых текущий индекс полигональной

области    (1    .    , . п) .. Ц;

Вых текущая горизонталь шаблона    МК    2ХД;

Вых текущая вертикаль шаблона    МК    2ХД;

Вых текущая точка лривязкн шаблона МК    Т.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ. Описание функции в соответствии с хт. 2.4.2; 2.11.2.

3.9.4.4. УЗНАТЬ ТЕКУЩЕЕ ЗНАЧЕНИЕ ИДЕНТИФИКАТОРА УКАЗАНИЯ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень 1Ь. INQUIRE CURRENT PICK IDENTIFIER VALUE Параметры:

Вых индикатор ошибок    Ц;

Вых текущий идентификатор указания    И

Индикатор ошибок может принимать значения: в ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ.

Описание функиин в соответствии с дп.2.4.2; 2.7.1; 2.11.2.

3.94.5. УКАЗАТЬ ТЕКУЩИЕ ЗНАЧЕНИЯ ИНДИВИДУАЛЬНЫХ АТРИБУТОВ

ГЯОТ, СТОТ. СТАК, СГОТ Уровень та. INQUIRE CURRENT INDIVIDUAL ATTRIBUTE YALUES. Параметры:

Вых индикатор ошибок    Ц;

Вых текущий тип линии    (—п ...    —1, 1 ... п)    Ц;

Вых текущий масштаб толщины линии    >=0    Д;

Вых текущий индекс цвета ломаной    (0    .    .    n)    U;

Вых текущий тип маркера (—п ... —1, I ...    п)    Ц;

Вых текущий масштаб маркера    >=>0    Д;

Вых текущий индекс цвета полнмаркера    (0    . .    . п)    Ц;

Вых текущий шрифт и точность представления текста    (— п . . . — I, I . . .    п;

ДО СТРОКИ, ДО ЛИТЕРЫ. ДО ШТРИХА) (Ц; П): Вых текущий масштаб расширения литеры    >0    Д;

Вых текущий межлнтерный просвет    Д;

Вых текущий индекс цвета текста    (0    . .    . п)    Ц;

Вых текущий вид заполнения полигональной

области (ПУСТО. ЗАЛИВКА. ПО ШАБЛОНУ, ШТРИХОВКА)    П;

Вых текущий индекс заполнителя

полигональной области    (—п . . . —1.1 ...    л)    Ц;

Вых текущий индекс цвета полигональной

области    (0    . .    . п)    Ц;

Вых текущий список флагов выборки атрибутов

(СВЯЗАННЫЙ. ИНДИВИДУАЛЬНЫЙ) 13ХП.

Страница 150

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 147

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОГ, СТА К или С ГОТ. Описание функции в соответствии с пп. 2.4.2; 2.11.2.

3.9.4.6.    УЗНАТЬ НОМЕР ТЕКУЩЕГО ПРЕОБРАЗОВАНИЯ НОРМИРОВАНИЯ

ГЯОТ. СТОТ, СТАК, СГОТ Уровень та. INQUIRE CURRENT NORMALIZATION TRANSFORMATION NUMBER.

Параметры:

Вых индикатор ошибок    Ц;

Вых текущий номер преобразования

нормирования    (0    .    .    .    п)    Ц.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ. Описание функции в соответствии с пп. 2.6.1; 2.11.2.

3.9.4.7.    УЗНАТЬ СПИСОК НОМЕРОВ ПРЕОБРАЗОВАНИЙ НОРМИРОВАНИЯ

ГЯОТ, СТОТ. СТАК, СГОТ Уровень Оа. INQUIRE LIST OF NORMALIZATION TRANSFORMATION NUMBERS.

Параметры:

•Вых индикатор ошибок    Ц;

Вых список номеров преобразований нормирования    nXU-

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ.

Описание функции в соответствии с пп. 2.6.1; 2.11.2.

3.9.4.8.    УЗНАТЬ ПРЕОБРАЗОВАНИЕ НОРМИРОВАНИЯ

ГЯОТ, СТОТ. СТАК. СГОТ Уровень та. INQUIRE NORMALIZATION TRANSFORMATION.

Параметры:

Вх номер преобразования нормирования (0 . . . п) Ц; Вых индикатор ошибок    Ц;

Вых границы окна    МК    4ХД;

Вых границы поля вывода    НК    4ХД-

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

50 Неверно задан номер преобразования.

Описание функции в соответствии с пп. 2.6.1; 2.11.2.

3.9.4.9.    УЗНАТЬ ЗНАЧЕНИЕ ОТСЕЧЕНИЯ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень та. INQUIRE CLIRPING.

Параметры:

Вых индикатор ошибок    Ц;

Вых индикатор отсечения (ОТСЕКАТЬ, НЕ ОТСЕКАТЬ) П;

Страница 151

С. 148 ГОСТ 27817-88 (СТ СЭВ 6177—88)

Вых прямоугольник отсечения НК    4ХД-

Икдикатор ошибок может приникать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ. СТАК или СГОТ.

Описание функции в соответствии с пп. 2.6.1; 2.11.2.

3.9.4.10.    УЗНАТЬ ИМЯ ОТКРЫТОГО СЕГМЕНТА

СГОТ Уровень 1а.

INQUIRE NAME OF OPEN SEGMENT.

Параметры:

Вых индикатор ошибок    Ц;

Вых имя открытого сегмента    И.

Индикатор ошибок может принимать значения:

4 ЯГС не находится в состоянии СГОТ.

Описание функции в соответствии с пп. 2.7.1; 2.11.2.

3.9.4.11.    УЗНАТЬ ИМЕНА СУЩЕСТВУЮЩИХ СЕГМЕНТОВ

СТОТ. СТАК. СГОТ Уровень 1а. INQUIRE SET OF SEGMENT NAMES IN USE.

Параметры:

Вых индикатор ошибок    Ц;

Вых число имен сегментов    (0    .    .    .    п)    Ц;

Вых набор имен существующих сегментов    пХИ.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состояпни СТО Г, СТАК или СГОТ. Описание функции в соответствии с пп. 2.7.1; 2.11.2.

3.9.4.12.    УЗНАТЬ НАЛИЧИЕ ОДНОВРЕМЕННЫХ СОБЫТИИ

СТОТ, СТАК. СГОТ Уровень шс. INQUIRE MORE SIMULTANEOUS EVENTS.

Параметры:

Вых индикатор ошибок    Ц;

Вых наличие одновременных событий (ЕСТЬ, НЕТ) П. Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ. Описание функции в соответствии с пп. 2.8.5; 2.11.2.

3.9.5. Справочные функции таблицы состояния станции 3.9.5.1. УЗНАТЬ ТИП И ИДЕНТИФИКАТОР СВЯЗИ СТАНЦИИ

СТОТ, СТАК, СГОТ Уровень та. INQUIRE WORKSTATION CONNECTION AND TYPE. Параметры:

Bx идентификатор станции    И

Вых индикатор ошибок    Ц

Вых идентификатор связи    И

Вых тип станции    И.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ. СТАК или СГОТ;

Страница 152

ГОСТ 27SI7—Зв 1СТ СЭВ 6177—88) С. 149

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта.

Описание функции в соответствии с пп. 2.5.2; 2.112.

3.9.5.2.    УЗНАТЬ СОСТОЯНИЕ СТАНЦИИ

СТОТ, СТАК. СГОТ Уровень 0а. INQUIRE WORKSTATION STATE.

Параметры:

Вх идентификатор станции    И;

Вых индикатор ошибок    Ц;

Вых состояние станции • (АКТИВНА, НЕАКТИВНА)    П.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ. СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла    ЯГС;

35 Указанная станция является станцией ввода.

Описание функции в соответствии с пп. 2.5.2; 2.11.2.

3.9.5.3.    УЗНАТЬ РЕЖИМ ЗАДЕРЖКИ И ОБНОВЛЕНИЯ СТАНЦИИ

СТОТ, СТАК. СГОТ Уровень 0а. INQUIRE WORKSTATION DEFERRAL AND UPDATE STATES.

Параметры:

Вх идентификатор станции    И;

Вых индикатор ошибок    Ц,-

Вых момент обновления (БЫСТРО, ГЛОБ, Л ОК. ЛЮБОЙ)    П;

Вых режим неявной повторной генерации

(ЗАПРЕЩЕНА,    РАЗРЕШЕНА)    П;

В'ых заполненность носителя изображения

(ПУСТ. НЕПУСТ)    П;

Вых при обновлении необходим вывод нового кадра

(ДА. НЕТ)    П.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция «е открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов. Описание функции в соответствии с пп. 2.5.3; 2.5.4; 2.11.2.

3.9.5.4.    УЗНАТЬ ИНДЕКСЫ ЛОМАНОЙ

СТОТ, СТАК, СГОТ Уровень 1а. INQUIRE LIST OF POLYLINE INDICES.

Параметры:

Вх идентификатор станции    И;

Страница 153

С. 130 ГОСТ 27817-88 (СТ СЭВ 6177-8*)

Sux индикатор ошибок    Ц;

Вых число определенных связок ломаной    (5 .    .    .    п)    Ц;

Вых список определенных индексов ломаной    (1 .    .    .    л)    nXU-

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК ила СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов. Описание функции в соответствии с пп. 2.4.3; 2.11.2.

3.9.5.5.    УЗНАТЬ ПРЕДСТАВЛЕНИЕ ЛОМАНОЙ

СТОТ. СТАК. СГОТ Уровень 1а. INQUIRE POLYLINE REPRESENTATION.

Параметры:

Вх идентификатор станции    И;

Вх индекс ломаной    (1 . . . п)    Ц;

Вх тип возвращаемых значений

(ЗАДАНО, РЕАЛИЗОВАНО)    П

Вых индикатор ошибок    Ц

Вых тип линии    (—л . . . —1. I . . . п) Ц

Вых масштаб толщины линии    >=0    Д

Вых индекс цвета ломаной    (0 ... л)    Ц.

Действие:

Если на станции указанного индекса ломаной нет в таблице связок ломаной и тип возвращаемых значений — РЕАЛИЗОВАНО, то возвращается представление для индекса, равного 1. Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией звода;

36    Указанная станция является общей памятью сегментов;

60 Неверно задан индекс ломаной;

6! Представление для указанного индехеа ломаной не было определено на данной станции.

Описание функции в соответствии с пп. 2.4.3; 2.11.2.

3.9.5.6.    УЗНАТЬ ИНДЕКСЫ ПОЛИМАРКЕРА

СТОТ. СТАК. СГОТ Уровень 1 а. INQUIRE LIST OF POLYMARKER INDICES.

Параметры:

Вх идентификатор станшш    И;

Вых индикатор ошибок    Ц;

Вых число определенных

связок полимаркера    (5    ...    л)    Ц;

Страница 154

ГОСТ 27817-88 (СТ СЭВ BI77-S8) С 15£

Вых список определенных

индексов полнмаркера    (1    .    . . n) nXU-

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или С ГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС.

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов. Описание функции в соответствии с пп. 2.4.4; 2.11.2.

3.9.5.7.    УЗНАТЬ ПРЕДСТАВЛЕНИЕ ПОЛИМАРКЕРА

СТОТ, СТАК. СГОТ Уровень 1а. INQUIRE POLYMARKER REPRESENTATION.

Параметры:

Вх идентификатор станции    И;

Вх индекс полимаркера    (1 . . . п)    Ц;

Вх тип возвращаемых значений

(ЗАДАНО. РЕАЛИЗОВАНО) П; Вых индикатор ошибок    Ц;

Вых тип маркера    (—п ... —1, 1 . . . п) Ц;

Вых масштаб маркера    >=0 Д;

Вых индекс цвета полнмаркера    (0 . . . п)    Ц.

Действие:

Если на станции указанного индскса полнмаркера нет в таблице связок маркера п тип возвращаемых значений — РЕАЛИЗОВАНО, то возвращается представление для индекса, равного L Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта:

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов;

60 Неверно задан индекс полимаркера;

67 Представление для указанного индекса полнмаркера не было определено на данной станции.

Описание функции в соответствии с пп. 2.4.4; 2.11.2.

3.9.5.8.    УЗНАТЬ ИНДЕКСЫ ТЕКСТА

СТОТ, СТАК, СГОТ Уровень !а. INQUIRE LIST OF TEXTINDECES.

Параметры:

Вх идентификатор станции    И;

Вых индикатор ошибок    Ц;

Вых число определенных связок текста (6 . . . п) Ц; Вых список определенных индексов текста (1 . . . п; п/Ц. Индикатор ошибок может принимать значения:

Страница 155

С. 152 ГОСТ 27817-38 (СТ СЭВ 5177—88)

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Ухазанная станция - • станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов. Описание функции в соответствии с пп. 2.4.5; 2.11.2.

3.9.5.9.    УЗНАТЬ ПРЕДСТАВЛЕНИЕ ТЕКСТА

. СТОТ, СТАК, СГОТ Уровень 1а. INQUIRE TEXT REPRESENTATION.

Параметры:

Вх идентификатор станции    И;

Вх индекс текста    (1 . . . п)    Ц;

Зх тип возвращаемых значений

(ЗАДАНО, РЕАЛИЗОВАНО) П; Вых индикатор ошибок    Ц;

Вых шрифт и точность представления текста

—1.1 ... п)

(ДО СТРОКИ. ДО ЛИТЕРЫ. ДО ШТРИХА) (Ц; П) Вых масштаб расширения литеры    >0    Д

Вых межлитерный просвет    Д

Вых индекс цвета текста    (0 . . . п)    Ц.

Действие:

Если на станции указанного индекса текста нет в таблице связок текста и тип возвращаемых значений — РЕАЛИЗОВАНО, то возвращается представление для индекса, равного 1.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ. СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является обшей памятью сегментов;

72    Неверно задан индекс текста;

73    Представление для указанного индекса текста не было определено на данной станции.

Описание функции в соответствии с пп. 2.4.5; 2.11.2.

3.9.5.10.    УЗНАТЬ ГАБАРИТЫ ТЕКСТА

СТОТ, СТА К. СГОТ Уровень ша.

INQUIRE TEXT EXTENT.

Параметры-

Вх идентификатор станции    И

Вх позиция текста    МК    Т

Вх строка литер    С

Вых индикатор ошибок    Ц

Вых точка сцепления    МК

Страница 156

ГОСТ 27817-М (СТ СЭВ 6177-88) С. 153

Выл параллелограмм текста    МК    4ХТ.

Действие:

Габариты строки литер вычисляются с использованием значений атрибутов «шрифт и точность представления текста», «масштаб расширения литеры» и «межлитерный просвет», установленных в данный момент (через связку или индивидуально в зависимости от соответствующих ФВА) и текущих значений геометрических атрибутов текста (ВЫСОТА ЛЙТЕРЫ, ШИРИНА ЛИТЕРЫ, ВЕРТИКАЛЬ ЛИТЕРЫ, ГОРИЗОНТАЛЬ ЛИТЕРЫ, НАПРАВЛЕНИЕ ТЕКСТА, ВЫРАВНИВАНИЕ ТЕКСТА). Если текущего индекса текста нет в таблице связок текста, то используется значение, определяемое индексом I.

Для точности представления текста ДО СТРОКИ и ДО ЛИ-1ЕРЫ берется минимальный параллелограмм, который полностью покрывает тела литер отображаемой строки (черт. 17).

Для направлений текста ВВЕРХ и ВНИЗ параллелограмм покрывает самую широкую литеру в шрифте. Размеры параллелограмма возвращаются в виде четырех угловых точек, упорядоченных в направлении движения против часовой стрелки.

Если ВЕРТИКАЛЬ ЛИТЕРЫ и ГОРИЗОНТАЛЬ ЛИТЕРЫ перпендикулярны, то параллелограмм габаритов текста — прямоугольник.

Точка сцепления может быть использована как позиция текста для последующих примитивов вывода ТЕКСТ. Для некоторых комбинаций НАПРАВЛЕНИЯ ТЕКСТА и ВЫРАВНИВАНИЯ ТЕКСТА тючка сцепления не вычисляется, а в параметре точка сцепления возвращается значение, которое имел параметр «позиция текста».

При НАПРАВЛЕНИИ ТЕКСТА - ВЛЕВО или ВПРАВО точка сцепления смещена от позиции текста в направлении, определяемом горизонтальной компонентой ВЫРАВНИВАНИЯ ТЕКСТА. Если значение этой компоненты ВЛЕВО, смещение должно быть вправо; если выравнивание ПО ЦЕНТРУ, смещение равняется нулю; если значение ВПРАВО, смещение должно быть влево. Если горизонтальная компонента ВЫРАВНИВАНИЕ ТЕКСТА не ПО ЦЕНТРУ, то величина смещения равна ширине параллелограмма текста плюс один дополнительный межлитерный просвет (ширина параллелограмма габаритов текста есть длина стороны, параллельной ГОРИЗОНТАЛИ ЛИТЕРЫ).

При НАПРАВЛЕНИИ ТЕКСТА — ВВЕРХ или ВНИЗ точка сцепления смещена от позиции текста в направлении, определяемом вертикальной компонентой ВЫРАВНИВАНИЯ ТЕКСТА. Если значение этой компоненты ПО ВЕРХУ или ПО ЗАГЛАВНОЙ, направление должно быть вниз; если значение ПО ЦЕНТРУ, — смещение равняется нулю; если значение ПО ОСНОВАНИЮ или ПО НИЗУ, то направление должно быть вверх. Если вертикальная

Страница 157

С. )Н ГОСТ 27^17—8в (СТ СЭВ 6I77--S&)

Прт»Л5*| ©г*#1п»н4 3»иии.*е У<^АГЬ ГАБАРИТЫ ТЕКСТА г\>* сами» -*д 4Г(м0у>»ч г««ст*


Q60)Ht«MR.

Р* X i»Wt^ ты»*,

С; ^    04»0*гил«.

S1, £2. ЕЯ. 64 - утпы np*MC/«fur.».*.'j    Г    ««CIA <В*ОрЫЙ пр*

)И1Ш *гр»*р4 НАПРАВЛЕНИЕ ''ЕКСГА-*В'*Ч w*« &НИЗ пи«ср»«мт Hin^or.jyoШМ-, rMt-.iv «    •


**жлита»мый RfoceET-o В€*тикаль гтитсры-Л.Ц

НАПРАВЛЕНИЕ ТЕКСТА ВПРАВО ВЫРАВНИВАНИЕ TIKCTA-(ОБЫЧНОЕ, 0ЬЫ**<ОС;


fir<M 1-LL.J

МЕЖЛИТЕРНЫЯ ПРОС8£Т--А2 вЕРТИКАПЬ ЛИ7*РЫ-10.1> НАПРАВЛЕНИЕ ТвКСТА-ВЛКВО П 1Л*АННИНАИК* I ТЕКСТА- lfb*ABO€

лооснованио; межлитерный npaceiT^

ЭСРТИКАГ.Ь ЛИТЙРи-1-М» НАПРАВЛЕНИЕ ТЕКСТА вЛ*А*0 биРАвНИВАИИЕ ТЕКСТА

;ОБУчкя.Об»ч«ОЕ1


там:




МЕНПИТСГИЫЙ ПРОСЗС’'0.2 etPTnKAHb HVlT€PV«-:0.t‘ НАПРАВЛЕНИЕ СТРОКИ-вниз •ЫРЛ&ИИ0АИК* TSKCTA-

;певое. ПОВЕРХ*

♦ с


МЕЖПИТЕРНЫЙ ПРОСВЕТ “Э ВЕРТИКАЛЬ rWTEPWW.1i НАПРАВЛЕНИЕ СТ*ОКИ-ВВ6.»Л ВЬРАвНИВАИИС ТЕКСТА-«ПОСДОДИН* ПО НИЗУ)


Черг. 17

компонента ВЫРАВНИВАНИЯ ТЕКСТА не ПО ЦЕНТРУ, то ве-личина смещения равняется высоте параллелограмма протяженности текста плюс один дополнительный межлнтерный просвет (высота параллелограмма габаритов текста есть длина стороны, параллельной ВЕРТИКАЛИ ЛИТЕРЫ).

Действие управляющих лнтер в тексте зависит от станции и совместимо с их обработкой функцией ТЕКСТ-Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

Страница 158

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 155

39 Указанная станция не является станцией вывода или ввода-вывода;

101 Неверный код литеры.

Описание функции в соответствии с пп. 2.4.5; 2.11.2.

3.9.5.11.    УЗНАТЬ ИНДЕКСЫ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ

СТОТ, СТАК, С ГОГ Уровень 1а. INQUIRE LIST OF FILL AREA INDICES.

Параметры:

Bx идентификатор станции    И;

Вых индикатор ошибок    Ц;

Вых число определенных связок

полигоиальиой области    (5 . . . п)    Ц;

Вых список определенных индексов

полигональной области    (1 . . . n) nXU-

Индикатор ошибок может принимать значения:

7 ЯГС но находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

55 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов. Описание функции в соответствии с пи. 2.4.6; 2.11.2.

3.9.5.12.    УЗНАТЬ ПРЕДСТАВЛЕНИЕ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ

СТОТ, СТАК, СГОТ Уровень 1 а. INQUIRE FILL AREA REPRESENTATION.

Параметры:

Bx идентификатор станции    И;

Вх индекс полигональной области    (I . . . п) Ц;

Вх тип возвращаемых значений

(ЗАДАНО. РЕАЛИЗОВАНО) П; Вых индикатор ошибок    Ц.

Вых вид заполнения полигональной области (ПУСТО. ЗАЛИВКА. ПО ШАБЛОНУ, ШТРИХОВКА) П; Вых индекс заполнителя полигональной

области    (—п . . . —1, 1 . . . п) Ц;

Вых индекс цвета полигональной области (0 . . . п) Ц. Действие:

Если на станции указанного индекса полигональной области нет в таблице связок полигональной области и тип возвращаемых значений — РЕАЛИЗОВАНО, то возвращается представление для индекса, равного 1.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

Страница 159

G. 156 ГОСТ 27817-88 (CT СЭВ 6177-88)

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов;

80    Неверно задан индекс полигональной области;

81    Представление для указанного индекса полигональной области не было определено на данной станции.

Описание функции в соответствии с пп. 2.4.6; 2.11.2.

3.9.5.13.    УЗНАТЬ ИНДЕКСЫ ШАБЛОНА

СТОТ, СТАК. СГОТ Уровень 1 а. INQUIRE LIST OF PATTERN INDICES.

Параметры:

Bx идентификатор станции    И;

Вых индикатор ошибок    Ц;

Вых число определенных представлений

шаблона    (0    .    .    .    п)    Ц;

Вых список определенных индексов шаблона (I    .    .    .    n)    nXU-

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК пли СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов. Описание функции в соответствии с пп. 2.4.6; 2.11.2.

3.9.5.14.    УЗНАТЬ ПРЕДСТАВЛЕНИЕ ШАБЛОНА

СТОТ, СТАК, СГОТ Уровень 1 а. INQUIRE PATTERN REPRESENTATION.

Параметры:

Вх идентификатор станции    И;

Вх индекс шаблона    (1    .    .    . п)    Ц;

Вх тип возвращаемых значений

(ЗАДАНО. РЕАЛИЗОВАНО)    П

Вых индикатор ошибок    Ц

Вых размерпости матрицы шаблона    (1    .    .    . п)    2ХЦ

Вых матрица шаблона    (0    .    .    . п)    пХпХЦ.

Действие:

Если на станции указанного индекса шаблона кет в таблице шаблонов и тип возвращаемых значений — РЕАЛИЗОВАНО, то возвращается представление для индекса, равного 1 (он имеется в наличии, если вид заполнения ПО ШАБЛОНУ поддерживается данной станцией).

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция - станция ввода метафайла ЯГС;

Страница 160

ГОСТ 27817-88 (СТ СЭВ 6177-88) С 137

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов;

85 Неверно задан индекс шаблона;

88 Представление для указанного индекса шаблона не было определено на данной станции;

90 Заполнение по шаблону не поддерживается на данной станции.

Описание функции в соответствии с пп. 2.4.6; 2.11.2.

3.9.5.15.    УЗНАТЬ ИНДЕКСЫ ЦВЕТА

СТОТ, СТАК, СГОТ Уровень та. •INQUIRE LIST OF COLOUR INDICES.

Параметры:

Bx идентификатор станции    И;

Вых индикатор ошибок    Ц;

Вых число определенных представлений цвета (2 . . п) Ц; Вых список определенных индексов цвета (0 . . . п) пХЦ. Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

35    Указанная станция является станцией ввода;

36    Указанная станция является обшей памятью сегментов. Описание функции в соответствии с пп. 2.4.6; 2.11.2.

3.9.5.16.    УЗНАТЬ ПРЕДСТАВЛЕНИЕ ЦВЕТА

СТОТ, СТАК, СГОТ Уровень та. INQUIRE COLOUR REPRESENTATION.

Параметры:

Вх идентификатор станции    И;

Вх индекс цвета    (0    .    .    .    п)    Ц;

Вх тип возвращаемых значений

(ЗАДАНО, РЕАЛИЗОВАНО)    П;

Вых индикатор ошибок    Ц;

Вых значения цвета (интенсивность

красного, зеленого, синего)    [0.,    I.J    ЗхД.

Действие:

Если на станции указанного индекса цвета нет в таблице цвета и тип возвращаемых значений — РЕАЛИЗОВАНО, то выдается такое зависящее от станции представление индекса цвета, которое будет использовано, если примитивы вывода выводятся с указанным индексом цвета.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

Страница 161

С. 158 ГОСТ 27817-88 (СТ СЭВ 6177-88)

35    Указанная станция является станцией ввода;

36    Указанная станция является общей памятью сегментов;

93    Неверно задан индекс цвета;

94    Представление для указанного индекса цвета не было определено на данной станции;

Описание функции н соответствии с пп. 2.4.9; 2.11.2.

3.9.5.17. УЗНАТЬ ПРЕОБРАЗОВАНИЕ СТАНЦИИ

СТОТ, СТАК, СГОТ Уровень та.

INQUIRE WORKSTATION TRANSFORMATION.

Параметры:

Зх идентификатор станции    И;

Вих индикатор ошибок    Ц;

Вых состояние обновления преобразования

станции    (НЕ    ЗАДЕРЖАНО,    ЗАДЕРЖАНО) П;

Вых запрошенное окно станции    НК    4хД;

Вых текущее окно станции    НК    4ХД;

Вых запрошенное поле вывода станции КУ    4ХД;

Вых текущее поле вывода станции    КУ    4ХД.

Действие:

Состояние обновления преобразования станции ЗАДЕРЖАНО, если изменение преобразования станции было запрошено, но еще не выполнено.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК пли СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС;

36 Указанная станция является общей памятью сегментов. Описание функции в соответствии с пп. 2.4.9; 2.11.2.

3.9.5.18. УЗНАТЬ ИМЕНА ХРАНИМЫХ НА СТАНЦИИ СЕГМЕНТОВ

СТОТ. СТАК, СГОТ Уровень 1 а. INQUIRE SET OF SEGMENTS NAMES ON WORKSTATION.

Параметры:

Bx идентификатор станции    И;

Вых индикатор ошибок    Ц;

Вых число имен сегментов    (0    .    .    .    п)    Ц;

Вых список запомненных на станции    сегментов    пхИ.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ; 20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

33 Указанная станция — станция ввода метафайла ЯГС; 35 Указанная станция является станцией ввода.

Описание функции в соответствии с пп. 2.6.3; 2.11.2.

Страница 162

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. I»

3.9.5.19. УЗНАТЬ СОСТОЯНИЕ УСТРОЙСТВА ВВОДА ПОЗИЦИИ

СТОТ, СТАК, СГОТ Уровень mt.

INQUIRE LOCATOR DEVICE STATE.

Параметры:

Bx идентификатор станции    И:

Вх номер устройства ввода позиции    (1 . . . п)    Ц;

Вх тип возвращаемых значений

(ЗАДАНО, РЕАЛИЗОВАНО)    П;

Вых индикатор ошибок    Ц;

Вых режим работы (ЗАПРОС, ОПРОС,    СОБЫТИЕ)    П:

Вых выключатель эха    (ЭХО,    БЕЗ ЭХА) П;

Вых начальный нох<ер преобразования

нормирования    (0 . . . п)    Ц,

Вых начальная позиция    МК    Т;

Вых тип подсказки и эха    (—л ... —1, 1 . . . п) Ц:

Вых область эха    КУ    4ХД;

Вых запись данных устройства ввода позиции    О.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или взэ-да-вывода;

140 Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с пп. 2.5.2; 2.7.1; 2.11.2.

3.9.5.20. УЗНАТЬ СОСТОЯНИЕ УСТРОЙСТВА ВВОДА ПО-СЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИИ

СТОТ, СТАК, СГОТ Уровень mb-

INQUIRE STROKE DEVICE STATE.

Параметры:

Bx идентификатор станции    И;

Вх номер устройства ввода

последовательности позиций    (I    .    .    .    п)    Ц;

Вх тип возвращаемых значений

(ЗАДАНО,    РЕАЛИЗОВАНО)    П,

Вых индикатор ошибок    Ц:

Вых режим работы (ЗАПРОС.    ОПРОС,    СОБЫТИЕ)    П.

Вых выключатель эха    (ЭХО,    БЕЗ    ЭХА)    П;

Страница 163

С. 160 ГОСТ 27817-88 (СТ СЭВ 6177—88)

Вых начальный номер преобразования

нормирования    (0    . . .п) Ц;

Вых начальное число позиций    (0    ... л) Ц;

Вых начальная последовательность

позиций    МК    пХТ

Вых тип подсказки и эха    (—п ... —1, 1 . . , л) Ц

Вых область эха    КУ    4ХД

Вых запись данных устройства ввода

последовательности позиций    О.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ. СТАК или СГОТ; 20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-

вывода;

140 Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с подразд. 2.8 и п. 2.11.2

3.9.5.21.    УЗНАТЬ СОСТОЯНИЕ УСТРОЙСТВА ВВОДА ЧИСЛА

СТОТ. СТАК. СГОТ Уровень mb. INQUIRE VALUATOR DEVICE STATE.

Параметры:

Bx идентификатор станции    И

Вх номер устройства ввода числа    (1    .    . . п) Ц

Вых индикатор ошибок    Ц

Вых режим работы (ЗАПРОС, ОПРОС. СОБЫТИЕ) П Вых выключатель эха    (ЭХО,    БЕЗ    ЭХА)    П

Вых начальное значение    числа    Д

Вых тип подсказки и эха    (—п ... —1, 1 ... п) Ц

Вых область эха    КУ    4ХД

Вых запись данных устройства

ввода числа    О.

Индикатор ошибок может принимать значения:

7 ЯГС не (находится в состоянии СТОТ, СТАК или СГОТ; 20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

НО Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с подразд. 2.8 и п. 2.11.2

3.9.5.22.    УЗНАТЬ СОСТОЯНИЕ УСТРОЙСТВА ВЫБОРА

СТОТ. СТАК. СГОТ Уровень mb. INQUIRE CHOICE DEVICE STATE.

Параметры:

Bx идентификатор станции    И;

Страница 164

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 161

Вх номер устройства выбора    (I . .п) * Ц;

Вых индикатор ошибок    Ц;

Вых режим работы (ЗАПРОС, ОПРОС.    СОБЫТИЕ)    П;

Вых выключатель эха    (ЭХО,    БЕЗ    ЭХА) П;

Вых начальное состояние    (ЕСТЬ, НЕТ ВЫБОРА)    П;

Вых начальный номер альтернативы    (I . . . п)    Ц:

Вых тип подсказки и эха    (— л ... —1, I ... п)    Ц.

Вых область эха    КУ    4ХД;

Вых запись данных устройства выбора    О.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ; 20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с подразд. 2.8 и п. 2.11.2.

3.9.5.23.    УЗНАТЬ СОСТОЯНИЕ УСТРОЙСТВА УКАЗАНИЯ

СТОТ, СТАК, СГОТ Уровень 1Ь. INQUIRE PICK DEVICE STATE.

Параметры:

Вх идентификатор станции    И

Вх номер устройства указания    (1    .    . . п) Ц

Вх тип возвращаемых значений (ЗАДАНО. РЕАЛИЗОВАНО) П Вых индикатор ошибок    Ц

Вых режим работы (ЗАПРОС,    ОПРОС, СОБЫТИЕ) П

Вых выключатель эха    (ЭХО.    БЕЗ    ЭХА) Г1

Вых начальное состояние (ЕСТЬ. НЕТ УКАЗАНИЯ) П Вых начальное имя сегмента    И

Вых начальный идентификатор    указания    И

Вых тип подсказки и эха    (—л    .    .    .    ■—1, 1 . . .п) Ц

Вых область эха    КУ    4ХД

Вых запись данных устройства указания    О

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ. СТАК нлн СГОТ 20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

37 Указавшая станция не является станцией ввода-вывода: 140 Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с подразд. 2.8 и п. 2.11.2.

3.9.5.24.    УЗНАТЬ СОСТОЯНИЕ УСТРОЙСТВА ВВОДА СТРОКИ

СТОТ, СТАК, СГОТ Уровень mb. INQUIRE STRING DEVICE STATE.

Страница 165

С. 162 ГОСТ 27817—8в (СТ СЭВ в!77-в8)

Параметры:

Вх идентификатор станции    И:

Вх номер устройства ввода строки    (1    .    .    . п) Ц$

Вых индикатор ошибок    Ц;

Вых режим работы (ЗАПРОС,    ОПРОС,    СОБЫТИЕ) П|

Вых выключатель эха    (ЭХО,    БЕЗ    ЭХА)    П;

Вых начальное значение строки    С;

Вых тип подсказки и эха    (—п ... —1, 1 ... п) Ц|

Вых область эха    КУ    4хД;

Вых запись данных устройства ввода    строки    О.

Индикатор ошибок может принимать значения:

7    ЯГС не находится в состоянии СТОТ, СТАК или СГОТ; 20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

38 Указанная станция не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с подразд. 2.8 и п. 2.11.2. 3.9.6. Справочные функции таблицы описания станции

3.9.6.1.    УЗНАТЬ КАТЕГОРИЮ СТАНЦИИ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень 0а. INQUIRE WORKSTATION CATEGORY.

Параметры:

Вх тип станции    И;

Вых индикатор ошибок    Ц;

Вых категория станции (ВЫВОД. ВВОД. ВВОД/ВЫВОД,

ОПС, МВЫВОД. МВВОД)    П;

Индикатор ошибок может принимать значения:

8    ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует.

Описание функции в соответствии с пп. 2.5.1; 2.11.2.

3.9.6.2.    УЗНАТЬ КЛАСС СТАНЦИИ

ГЯОТ. СТОТ. СТАК, СГОТ Уровень Оа. INQUIRE WORKSTATION CLASSIFICATION.

Параметры:

Вх тип станции    И

Вых индикатор ошибок    Ц

Вых класс станции (ВЕКТОРНАЯ. РАСТРОВАЯ. ДРУГАЯ) П Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

Страница 166

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 163

39 Указанная станция не является станцией вывода или ввода-вывода.

Описание функции в соответствии с пп. 2.5.1, 2.11.2.

3.9.6.3. УЗНАТЬ РАЗМЕР НОСИТЕЛЯ ИЗОБРАЖЕНИЯ

ГЯОТ. СТОТ, СТАК. СГОТ Уровень та. INQUIRE DISPLAY SPACE SIZE.

Параметры:

Bx тип станции    И;

Вых индикатор ошибок    Ц;

Вых единицы измерения координат

устройства    (МЕТРЫ.    ДРУГИЕ) П;

Вых размер носителя изображения

(в координатах устройства) КУ    >0 2хД;

Вых размер носителя изображения

(в единицах растра)    (1    .    .    п) 2ХЦ.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

31 Указанная станция— станция вывода метафайла ЯГС;

33 Указанная станция — станция ввода метафайла ЯГС;

36 Указанная станция является общей памятью сегментоз Описание функции в соответствии с пп. 2.5.1, 2.11.2.

3.96.4. УЗНАТЬ СПОСОБ ДИНАМИЧЕСКОЙ МОДИФИКАЦИИ АТРИБУТОВ СТАНЦИИ

ГЯОТ. СТОТ, СТАК, СГОТ Уровень 1а. INQUIRE DYNAMIC MODIFICATION OF WORKSTATION ATTRIBUTES.

Параметры:

Bx тип    станции    И;

Вых    индикатор ошибок    Ц;

Вых режим изменения связки ломакой    (НПГ.    НОИ)    П;

Вых режим изменения связки полимаркера (НПГ,    НОИ)    П;

Вых режим изменения связки текста    (НПГ.    НОИ)    П;

Вых режим изменения связки полигональной

области    (НПГ,    НОИ)    П;

Вых режим изменения представления шаблона

(НПГ,    НОИ)    П;

Вых режим изменения представления цвета

(НПГ,    НОИ)    П;

Вых режим изменения преобразования станции

(НПГ,    НОИ)    П.

Страница 167

С. 154 ГОСТ 27817-88 (СТ СЭВ 6177-88)

Примечание. НПГ означает, что неявная повторял* генерация необходима при соответствующей изменении; НОИ — что обновленке изображения «ь*ттние7ся немедленно.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ:

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода вывода.

Описание функции в соответствии с пп. 2.5.1; 2.5.3; 2.11.2.

3.9.6.5.    УЗНАТЬ РЕЖИМ ЗАДЕРЖКИ ПО УМОЛЧАНИЮ

ГЯОТ. СТОТ. СТАК. СГОТ Уровень 1а. INQUIRE DEFAULT DEFERRAL STATE VALUES.

Параметры:

Bx тип станции    И;

Вых индикатор ошибок    Ц;

Вых значение момента обновления

по умолчанию (БЫСТРО. ГЛОБ. ЛОК,    ЛЮБОЙ)    П;

Вых значение режима неявной повторной генерации

по умолчанию (ЗАПРЕЩЕНА, РАЗРЕШЕНА) П. Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ:

22    Неверно задан тип станции;

23    Заданный тнп станции не существует;

39 Указанная станция не является станцией вывода нлн ввода-вывода.

Описание функции в соответствии с пп. 2.5.1, 2.5.3, 2.11.2.

3.9.6.6.    УЗНАТЬ ВОЗМОЖНОСТИ ПРЕДСТАВЛЕНИЯ ЛОМАНОЙ

ГЯОТ. СТОТ. СТАК. СГОТ Уровень та. INQUIRE POLYLINE FACILITIES.

Параметры:

Вх тнп станции    И;

Вых индикатор ошибок    Ц;

Вых число доступных типов линий    (4    .    .    .    п)    Ц;

Вых список доступных типов линий (—in... —!, 1... п) пХЦ; Вых число доступных значений

толщины линии    (0... п)    Ц;

Вых номинальное значение толщины линии КУ >0 Д; Вых диапазон значений толщины линии

(минимальное, максимальное)    КУ    >0    2хД;

Вых число предопределенных

связок ломаной    (5... п)    Ц.

Страница 168

ГОСТ 27817-88 (СТ СЭВ 6177-88) С 165

Действие:

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

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТЛК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вывода.

Описание функции в соответствии с пп. 2 5.1, 2.11.2.

3.9.6.7.    УЗНАТЬ ПРЕДОПРЕДЕЛЕННОЕ ПРЕДСТАВЛЕНИЕ ЛОМАНОЙ

ГЯОТ, СТОТ. СТАК, СГОТ Уровень Оа. INQUIRE PREDEFINED POLYLINE REPRESENTATION. Параметры:

Bx тип станции    И;

Вх индекс предопределенного

представления ломаной    (1...п)    Ц;

Вых индикатор ошибок    Ц:

Вых тип линии    (—П...—1, 1...П) Ц.

Вых масштаб толщины линии    Д;

Вых индекс цвета ломаной    (0    .    .    .    п)    Ц.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ. СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вывода;

60 Неверно задан индекс ломаной;

62 Представление для указанного индекса ломаной не предопределено на данной станции.

Описание функции в соответствии с пп. 2.5.1; 2.11.2.

3.9.6.8.    УЗНАТЬ ВОЗМОЖНОСТИ ПРЕДСТАВЛЕНИЯ ПОЛИМАРКЕРА

ГЯОТ, СТОТ. СТАК, СГОТ Уровень та. INQUIRE POLYMARKER FACILITIES.

Параметры:

Вх тип станции    И;

Вых индикатор ошибок    Ц;

Вых число доступных типов маркера    (5... л)    Ц;

Вых список доступпых типов

маркера    (—и ——I, 1 — п) пХЦ;

Вых число доступных размеров маркера    (0...п)    Ц;

Страница 169

С. J66 ГОСТ 27817-88 (СТ СЭВ 6177-S8)

Вых номинальный размер маркера Зых диапазон размеров маркера (минимальный, максимальный)

Вых число предопределенных связок поли маркера Действие.

КУ

>0

Д:

КУ

>0

2ХД;

(5...л)

ц.

Если число доступных размеров маркера ноль, станция поддерживает непрерывный диапазон изменений размеров маркеров. Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ. СТОТ. СТЛК или

СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

Указанная станция не является станцией вывода или ввода-вывода.

Описание функции в соответствии с пп. 2.5.1, 2.11.2.

Ь.9.6.9. УЗНАТЬ ПРЕДОПРЕДЕЛЕННОЕ ПРЕДСТАВЛЕНИЕ ПОЛИМАРКЕРА

ГЯОТ. СТОТ. СТАК. СГОТ Уровень Оа. INQUIRE PREDEFINED POLYMARKER REPRESENTATION. Параметры:

Bx тип станции    И;

3.\ индекс предопределенного

представления полимаркера    (1...л)    Ц;

Вых индикатор ошибок    Ц;

Зых тип маркера    (—п...—1, 1.,.л) Ц;

Вых масштаб маркера    Д;

Зых индекс цвета полимаркера    (0...п)    Ц.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вывода; об Неверно задан индекс полимаркера;

68 Представление для указанного индекса    полнмаркера    не

предопределено на данной станции.

Описание функции в соответствии с пп. 2.5.1; 2.11.2.

3.9.6.10. УЗНАТЬ ВОЗМОЖНОСТИ ПРЕДСТАВЛЕНИЯ ТЕКСТА

ГЯОТ. СТОТ. СТАК, СГОТ Уровень та. INQUIRE TEXT FACILITIES.

Параметры:

Зх тип станции    И;

Вых индикатор ошибок    Ц;

Страница 170

ГОСТ 27817-88 (СТ СЭВ 6177-88) С 167

Вых число пар шрифт — точность

представления текста    (1 — п)    Ц;

Вых список пар шрифт —точность

представления текста    (—n...—I, 1...П);

(ДО СТРОКИ. ДО ЛИТЕРЫ. ДО ШРИХА)    пх(Ц;    П>;

Вых число доступных высот литеры;    '    (0...л)    Ц;

Вых диапазон высоты литеры

(минимум, максимум)    КУ    >0    2ХД;

Вых число доступных масшт-абов расширения

литеры    (0... п)    Ц;

Вых диапазон масштаба расширения

литеры (минимум, максимум)    КУ    >0    2хД;

Вых число предопределенных

связок текста    (2...л) Ц.

Действие:

Если число доступных масштабов расширения литеры ноль, то станция поддерживает непрерывный диапазон изменения масштабов расширения литер.

Индикатор ошибок может принимать значения:

8 ЯГС «е находится в состоянии ГЯОТ. СТОТ, СТАК или СГОТ;

22    Неверно задан тин станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода илн ввода-вывода.

Описание функции в соответствии с пп. 2.5.1; 2.11.2.

3.9.6.11. УЗНАТЬ ПРЕДОПРЕДЕЛЕННОЕ ПРЕДСТАВЛЕНИЕ ТЕКСТА

ГЯОТ, СТОТ, СТАК, СГОТ Уровень 0а INQUIRE PREDEFINED TEXT REPRESENTATION. Параметры:

Bx тип станции    И;

Вх индекс предопределенного

представления текста    (1...п)    Ц;

Вых индикатор ошибок    Ц;

Вых шрифт и точность

представления текста (—л ...— 1, 1... п);

(ДО СТРОКИ, ДО ЛИТЕРЫ, ДО ШРИХА)    Ц;    П

Вых масштаб расширения литеры    >0    Д

Вых межлнтерный просвет    Д

Вых индекс цвета текста    (0...л)    Ц.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ:

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

6 Зак. 2214

Страница 171

С. 168 ГОСТ 27817-88 (СТ СЭВ 6177—88)

39 Указанная станция не является станцией вывода или ввода-вывода;

72 Неверно задан индекс текста;

74 Представление для указанного индекса текста не предопределено на данной станции;

Описание функции в соответствии с пп. 2.5.1, 2.11.2.

3.9.6.12.    УЗНАТЬ ВОЗМОЖНОСТИ ПРЕДСТАВЛЕНИЯ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ

ГЯОТ, СТОТ, СТАК, СГОТ Уровень та. INQUIRE FILL AREA FACILITIES.

Параметры:

Bx тип станции    И;

Вых индикатор ошибок    Ц;

Вых число доступных видов заполнения

полигональных областей    (1...П)    Ц;

Вых список доступных видов заполнения полигональной области (ПУСТО. ЗАЛИВКА, ПО ШАБЛОНУ, ШТРИХОВКА) пХП: Вых число доступных видов штриховки    (0...п)    Ц;

Вых список доступных видов штриховки

(—л...—1,1...п) пХЦ;

Вых число предопределенных

связок полигональной области    (5...п)    Ц.

Индикатор ошибок может принимать значения:

8 ЯГС «е находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вы вода.

Описание функции в соответствии с пи. 2.5.1, 2.11.2.

3.9.6.13.    УЗНАТЬ ПРЕДОПРЕДЕЛЕННОЕ ПРЕДСТАВЛЕНИЕ ПОЛИГОНАЛЬНОЙ ОБЛАСТИ

ГЯОТ. СТОТ, СТАК, СГОТ Уровень Оа. INQUIRE PREDEFINED FILL AREA REPRESENTATION. Параметры:

Bx тип станции    И;

Вх индекс предопределенного

представления полигональной области    (1...л)    Ц;

Вых индикатор ошибок    Ц;

Вых вид заполнения полигональной области

(ПУСТО. ЗАЛИВКА, ПО ШАБЛОНУ, ШТРИХОВКА) П; Вых индекс заполнителя полигональной

области    (—л... — 1, 1...п) Ц;

Вых индекс цвета полигональной области    (0...п)    Ц.

Индикатор ошибок может принимать значения:

Страница 172

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 169

8 ЯГС ие находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вы вода;

80 Неверно задан индекс полигональной области;

82 Представление для указанного индекса полигональной области не предопределено на данной станции.

Описание функции в соответствии с пп. 2.5.1, 2.11.2.

3.9.6.14.    УЗНАТЬ ВОЗМОЖНОСТИ ПРЕДСТАВЛЕНИЯ ШАБЛОНА

ГЯОТ, СТОТ, СТАК. СГОТ Уровень 0а. INQUIRE PATTERN FACILITIES.

Параметры:

Вх тип станции    И;

Вых индикатор ошибок    Ц;

Вых число предопределенных

представлений шаблона    (0...л)    Ц.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вывода.

Описание функции в соответствии с пп. 2.5.1, 2.11.2.

3.9.6.15.    УЗНАТЬ ПРЕДОПРЕДЕЛЕННОЕ ПРЕДСТАВЛЕ-НИЕ ШАБЛОНА

ГЯОТ, СТОТ, СТАК, СГОТ Уровень 0а. INQUIRE PREDEFINED PATTERN REPRESENTATION. Параметры:

Вх тин станции    И;

Вх индекс предопределенного

представления шаблона    (1...л)    Ц;

Вых индикатор ошибок    Ц;

Вых размерности матрицы шаблона    (1... л)    2XU;

Вых матрица шаблона    (0 — п) лХпХЦ.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вывода;

85 Неверно задан индекс шаблона;

Страница 173

С. 170 ГОСТ 27817 88 (CT СЭВ 6177 88)

89    Представление для указанного индекса шаблона не предопределено на данной станции;

90    Заполнение по шаблону не поддерживается на данной станции.

Описание функции в соответствии с пп. 2.5.1, 2.11.2.

3.9.6.16.    УЗНАТЬ ВОЗМОЖНОСТИ ПРЕДСТАВЛЕНИЯ ЦВЕТА

ГЯОТ. СТОТ. СТАК. СГОТ Уровень та. INQUIRE COLOUR FACILITIES.

Параметры:

Вх тип станции    И;

Вых индикатор ошибок    Ц;

Вых число возможных значений индексов

цвета (или интенсивности)    (0,2...п)    Ц;

Вых наличие цвета (ЦВЕТНОЕ, МОНОХРОМНОЕ) П; Вых число предопределенных представлений

цвета    (2...п)    Ц.

Действие:

Если число доступных значений цвета или интенсивности ноль, то станция поддерживает непрерывный диапазон значений цвета или интенсивности.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является сташцией вывода или ввода-вывода.

Описание функции в соответствии с пп. 2.5.1, 2.11.2.

3.9.6.17.    УЗНАТЬ ПРЕДОПРЕДЕЛЕННОЕ ПРЕДСТАВЛЕНИЕ ЦВЕТА

ГЯОТ, СТОТ, СТАК, СГОТ Уровень 0а. INQUIRE PREDEFINED COLOUR REPRESENTATION. Параметры;

Вх тип станции    И;

Вх индекс предопределенного

представления цвета    (0...п)    Ц;

Вых индикатор ошибок    Ц;

Вых значение интенсивностей

красного, зеленого, синего    [0., 1.] ЗхД.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

Страница 174

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 171

39 Указанная станция не является станцнеи вывода или ввода-вы вода;

93 Неверно задан индекс цвета;

95 Представление для указанного индекса цвета не предопределено на данной станции.

Описание функции в соответствии с пп. 2.5.1, 2.11.2.

3.9.6.18. УЗНАТЬ ИДЕНТИФИКАТОРЫ ДОСТУПНЫХ ОБОБЩЕННЫХ ПРИМИТИВОВ ВЫВОДА

ГЯОТ. СТОТ. СТАК, СГОТ Уровень Оа. INQUIRE LIST OF AVAILABLE GENERALIZED DRAWING

PRIMITIVES.

Параметры:

Bx тип станции    И;

Вых индикатор ошибок    Ц;

Вых число доступных ОПВ    (0...л)    Ц;

Вых список идентификаторов ОПВ    nXU.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тин станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вывода.

Описание функции в соответствии с пп. 2.5.1, 2.11.2.

3.9.6.19. УЗНАТЬ ХАРАКТЕРИСТИКИ ОБОБЩЕННОГО ПРИМИТИВА ВЫВОДА

ГЯОТ, СТОТ. СТАК, СГОТ Уровень Оа. INQUIRE GENERALIZED DRAWING PRIMITIVE.

Параметры:

Bx тип станции    И

Вх идентификатор ОПВ    И

Вых индикатор ошибок    Ц

Вых число используемых наборов атрибутов (0...4) Ц Вых список используемых наборов атрибутов

(ЛОМАНАЯ, ПОЛИМАРКЕР. ТЕКСТ) ПОЛИГОНАЛЬНАЯ ОБЛАСТЬ) пХП; Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вывода;

41 Станция указанного типа не может генерировать указанный обобщенный примитив вывода.

Описание функции в соответствии с пп. 2.5.1, 2.11.2.

Страница 175

С 172 ГОСТ 27817-88 (СТ СЭВ 6177-88)

3.9.6.20.    УЗНАТЬ ДЛИНУ ТАБЛИЦ СТАНЦИИ

ГЯОТ. СТОТ, СТАК, СГОТ Уровень та. INQUIRE MAXIMUM LENGTH OF WORKSTATION STATE TABLES.

Параметры:

И;

Ц;

(5.

.п)

Ц;

(5.

.п)

Ц;

(2.

• п)

Ц;

(5.

.п)

Ц;

(0.

• п)

Ц;

(2.

..п)

Ц.

Bx тип станции Вых индикатор ошибок Вых максимальное число связок ломаной Вых максимальное число связок полимаркера Вых максимальное число связок текста

Вых максимальное число связок полигональной области Вых максимальное число индексов шаблона Вых максимальное число индексов цвета Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вывода.

3.9.6.21.    УЗНАТЬ ДОПУСТИМОЕ ЧИСЛО ПРИОРИТЕТОВ СЕГМЕНТОВ

ГЯОТ. СТОТ. СТАК. СГОТ Уровень 1а. INQUIRE NUMBER OF SEGMENT PRIORITIES SUPPORTED. Параметры:

Bx тип станции    И;

Вых индикатор ошибок    Ц;

■ Вых число приоритетов сегментов    (0... n) II.

Действие:

Если число приоритетов сегмента ноль, то станция поддерживает неограниченное число приоритетов сегментов.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вывода.

Описание функции в соответствии с пп. 2.5.1, 2.7.2, 2.11.2.

3.9.6.22.    УЗНАТЬ СПОСОБ ДИНАМИЧЕСКОЙ МОДИФИКАЦИИ АТРИБУТОВ СЕГМЕНТОВ

ГЯОТ. СТОТ, СТАК. СГОТ Уровень 1а.

Страница 176

ГОСТ 27817-88 (СТ СЭВ 6177—S8) С. 173

INQUIRE DYNAMIC MODIFICATION OF SEGMENT ATTRIBUTES.

Параметры:

Bx тип станции    И;

Вых индикатор ошибок    Ц;

Вых режим изменения преобразования

сегмента    (НПГ,    НОИ)    П*

Вых режих! изменения видимости из

«видимой» в «невидимую»    (НПГ,    НОИ)    П;

Вых режим изменения видимости из

«невидимой» в «видимую»    (НПГ,    НОИ)    П;

Вых режим изменения выделения    сегмента    (НПГ,    НОИ)    П;

Вых режим изменения приоритета    сегмента    (НПГ,    НОИ)    П;

Вых режим добавления примитивов в

открытый сегмент    (НПГ,    НОИ)    П;

Вых режим удаления непосредственно

видимого сегмента    (НПГ,    НОИ)    П.

Примечание. НПГ означает, что неявная повторная генерация необходима при соспвстствуюшем кшекс-нвн; НОИ — чго обновление кзобрэже* ния выполняется немедленно.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

39 Указанная станция не является станцией вывода или ввода-вы вода.

Описание функции в соответствии с пп. 2.5.1, 2.5.3, 2.11.2. 3.9.6.23. УЗНАТЬ КОЛИЧЕСТВО ДОСТУПНЫХ УСТРОЙСТВ

ВВОДА

ГЯОТ, СТОТ. СТАК, СГОТ Уровень mb. INQUIRE NUMBER OF AVAILABLE LOGICAL INPUT DEVICES.

Параметры:

Bx тип станции    И;

Вых индикатор ошибок    Ц;

Вых число устройств ввода позиции    (0...п)    Ц;

Вых число устройств ввода

последовательности позиций    (0...n)    Щ

Вых число устройств ввода числа    (0...п)    Ц;

Вых число устройств выбора    (0... п)    Ц;

Вых число устройств указания    (0...п)    Ц;

Вых число устройств ввода строки    (0...п)    Ц.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

Страница 177

С. 174 ГОСТ 27817-88 (СТ СЭВ 6177-88)

22    Неверно задан тип станции;

23    Заданный тин станции не существует;

36 Указанная станция не является станцией ввода или ввода-вывода.

Описание функции в соответствии с пп. 2.5.1, 2.8.1, 2.11.2.

3.9.6.24.    УЗНАТЬ ХАРАКТЕРИСТИКИ ПО УМОЛЧАНИЮ УСТРОЙСТВА ВВОДА ПОЗИЦИИ

ГЯОТ. СТОТ. СТА К, С ГОТ Уровень mb. INQUIRE DEFAULT LOCATOR DEVICE DATA.

Параметры:

И;

(1...

п)

Ц;

Ц;

ЛАК

Т;

(1...

п)

Ц;

..п)

лХЦ;

КУ

4ХД;

О.

\ СТАК или

Bx тип станции

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

(-П...-1, 1.

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

8 ЯГС не находится в состоянии ГЯОТ, СТОТ,

СГОГ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

38 Указанная станция не является станцией ввода или ввода-вы вода ;

140 Указанное устройство ввода отсутствует ка станции. Описание функции в соответствии с пп. 2.5.1, 2.8.1, 2.8.6, 2.11.2.

3.9.6.25.    УЗНАТЬ ХАРАКТЕРИСТИКИ ПО УМОЛЧАНИЮ УСТРОЙСТВА ВВОДА ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИЙ

ГЯОТ. СТОТ, СТАК, СГОТ Уровень mb. INQUIRE DEFAULT STROKE DEVICE DATA.

Параметры:

Bx тип станции    И;

Bx номер логического устройства ввода    (1...п)    Ц;

Вых индикатор ошибок    Ц;

Вых максимальный размер буфера

входных данных    (64... п)    Ц;

Вых число доступных типов подсказки    и    эха    (1... п)    Ц;

Вых список доступных типов подсказки и эха

(—п,,. —1,    1...п)    лХЦ;

Вых область эха по умолчанию    КУ    4ХД;

• Вых запись данных устройства ввода

последовательности позиций по умолчанию    О.

Страница 178

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. >75

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯО'Г, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тин станции не существует;

38 Указанная станция не является станцией ввода или ввода-вывода;

МО Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с пп. 2.5.1, 2.8.1, 2.8.6, 2.11.2.

3.9.6.26.    УЗНАТЬ ХАРАКТЕРИСТИКИ ПО УМОЛЧАНИЮ УСТРОЙСТВА ВВОДА ЧИСЛА

ГЯОТ, СТОТ, СТАК, СГОТ Уровень mb. INQUIRE DEFAULT VALUATOR DEVICE DATA.

Параметры:

Bx тип станции    И;

Bx номер логического устройства ввода    (I ...п)    Ц;

Вых индикатор ошибок    Ц;

Вых начальное значение    по умолчанию    Д;

Вых число доступных типов подсказки и эха    (1 ...л)    Ц;

Вых список доступных типов подсказки и эха

(—л...— 1, 1...п)    пХЦ;

Вых область эха по умолчанию    КУ    4ХД;

Вых запись данных устройства ввода числа

по умолчанию    О.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ. СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

38 Указанная станция не является станцией ввода или ввода-вывода;

140 Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с пп. 2.5.1, 2.8.1, 2.8.6, 2.11.2.

3.9.6.27.    УЗНАТЬ ХАРАКТЕРИСТИКИ ПО УМОЛЧАНИЮ УСТРОЙСТВА ВЫБОРА

ГЯОТ, СТОТ, СТАК. СГОТ Уровень mb. INQUIRE DEFAULT CHOICE DEVICE DATA.

Параметры:

И;

<1...

п)

Ц;

Ц;

(1...

п)

Ц;

(1...

п)

Ц;

..л)

пХЦ;

КУ

4Х'Д;

Bx тип станции

Bx номер логического устройства ввода Вых индикатор ошибок Вых максимальное число альтернатив Вых число доступных типов подсказки и эха Вых список доступных типов подсказки и эха

(—Л ... — 1,

Вых область эха по умолчанию

Страница 179

С 176 ГОСТ 27817-88 (СТ СЭВ 6177—88)

Вых запись данных устройства выбора по умолчанию.    О.

Индикатор ошибок "может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

38 Указанная станция не является станцией ввода или ввода-вы вода;

140 Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с пп. 2.5.1, 2.8.1, 2.8.6, 2.11.2.

3.9.6.28.    УЗНАТЬ ХАРАКТЕРИСТИКИ ПО УМОЛЧАНИЮ УСТРОЙСТВА указания

ГЯОТ. СТОТ, СТАК. СГОТ Уровень lb. INQUIRE DEFAULT PICK DEVICE DATA.

Параметры:

Bx тип станции    И

Bx номер логического устройства ввода    (1...П)    Ц

Вых индикатор ошибок    Ц

Вых число доступных типов подсказки и эха    (1 ...п)    Ц

Вы.х список доступных типов подсказки и эха

(—п ... —1. I... п) пХП; Вых область эха по умолчанию    КУ    4ХД:

Вых запись данных устройства указания по умолчанию О. Индикатор ошибок может принимать значения:

8 ЯГС не находится и состояния ГЯОТ, СТОТ, СТАК или СГОТ;

22    Неверно задан тип станции’,

23    Заданный тип станции не существует;

37 Указанная станция не является станцией ввода-вывода;

140 Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с пп. 2.5.1; 2.8.1; 2.8.6; 2.11.2.

3.9.6.29.    УЗНАТЬ ХАРАКТЕРИСТИКИ ПО УМОЛЧАНИЮ УСТРОЙСТВА ВВОДА СТРОКИ

ГЯОТ, СТОТ. СТАК. СГОТ Уровень mb. INQUIRE DEFAULT STRING DEVICE DATA.

Параметры:

Bx тип станции    И

Bx номер логического устройства ввода    (1 ...п)    Ц

Вых индикатор ошибок    Ц

Вых максимальный размер буфера

входных данных    (72... п)    Ц;

Вых число доступных типов подсказки    и    эха    (1    ... п)    Ц;

Вых список доступных типов подсказки н эха

(—п ... —1,    1...    п)    пХЦ;

Вых область эха по умолчанию    КУ    4ХД;

Вых запись данных устройства ввода строки

Страница 180

ГОСТ 27817-88 (СТ СЭВ 6177-88) С. 177

по умолчанию    О.

Индикатор ошибок может принимать значения:

8 ЯГС не находится в состоянии ГЯОТ, СТОТ, СТАК или С ГОТ;

22    Неверно задан тип станции;

23    Заданный тип станции не существует;

38 Указанная станция не является станцией ввода или ввода-вывода:

140 Указанное устройство ввода отсутствует на станции. Описание функции в соответствии с пп. 2.5.1; 2.8.1; 2.8.6: 11.2.

3.9.7.Справочные    функции таблицы состояния сегмента

3.9.7.1.    УЗНАТЬ СТАНЦИИ. СВЯЗАННЫЕ С СЕГМЕНТОМ

СТОТ, СТАК. СГОТ Уровень 1а. INQUIRE SET OF ASSOCIATED WORKSTATIONS.

Параметры:

Bx имя сегмента    И;

Вых индикатор ошибок    Ц;

Вых число связанных с сегментом станций    (1    ...п)    Ц;

Вых набор связанных с сегментом станций    пхИ.

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОК.    СТАК или    СГОТ;

120 Неверно задано имя сегмента;

122 Указанный сегмент не существует.

Описание функции в соответствии с пп. 2.7.2; 2.11.2.

3.9.7.2.    УЗНАТЬ АТРИБУТЫ СЕГМЕНТА

СТОТ. СТАК. СГОТ Уровень 1а. INQUIRE SEGMENT ATTRIBUTES.

Параметры:

Вх имя сегмента    И

Вых индикатор ошибок    Ц

Вых матрица преобразования сегмента    2ХЗХД

, Вых видимость    (ВИДИМЫЙ, НЕВИДИМЫЕ) П

Вых выделение (НОРМАЛЬНЫЙ, ВЫДЕЛЕННЫЙ) П Вых приоритет сегмента    10.,    I.)    Д

Вых чувствительность к указанию

(НЕ УКАЗЫВАЕМЫЙ. УКАЗЫВАЕМЫЙ) П. Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ; 120 Неверно задано имя сегмента;

122 Указанный сегмент не существует.

Описание функции в соответствии с пп. 2.7.2; 2.11.2.

3.9.8.    Справочные функции пикселей

3.9.8.1. УЗНАТЬ РАЗМЕРНОСТЬ МАТРИЦЫ ПИКСЕЛЕЙ

СТОТ, СТАК. СГОТ Уровень 0а. INQUIRE PIXEL ARRAY DIMENSIONS.

Страница 181

С. 178 ГОСТ 27817-85 (СТ СЭВ 6177—8S)

Параметры:

Вх идентификатор станции    И

Вх точки Р и Q    МК    2хТ

Вы.х индикатор ошибок    Ц

Вых размерность матрицы пикселей    2хЦ.

Действие:

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

Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

39 Указанная стамция не является станцией вывода или ввода-вывода.

Описание функции в соответствии с п. 2.11.2.

3.9.8.2. УЗНАТЬ МАТРИЦУ ПИКСЕЛЕЙ

СТОТ, СТАК. СГОТ Уровень Оз.

INQUIRE PIXEL ARRAY.

Параметры:

Вх идентификатор станции    И;

Вх точка Р    МК    Т;

Вх размерности массива индексов

цвета DX и DY    (1...п)    2хЦ;

Вых индикатор ошибок    Ц;

Вых наличие неправильных значений

(ОТСУТСТВУЮТ. ПРИСУТСТВУЕТ)    П;

Вых массив индексов цвета    (—I... п) пХпХЦ.

Действие:

После применения текущего преобразования нормирования и преобразования станции к точке Р ее привязывают к пикселю носителя изображения. Индекс цвета этого пикселя заносится в элемент (1, I) массива индексов цвета (левый верхний угол). Далее возвращаемый массив индексов цвета формируется из индексов цвета матрицы пикселей таким образом, что увеличение индекса первой размерности массива соответствует увеличению Х-координаты устройства, а увеличение индекса второй размерности — уменьшению Y—координаты устройства. Если индекс цвета, соответствующий некоторому пикселю, не может быть выяснен (например точка Р преобразуется так. что позиция пикселя находится вне носителя изображения), то для этой ячейки устанавливается значение индекса цвета равное -I (т. е. неправильное).

Индикатор ошибок может принимать значения:

Страница 182

ГОСТ *7817—85 (СТ СЭВ 8177 -S8) С. 179

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

39    Указанная станция не является станцией вывода или ввода-вывода;

40    Указанная станция не имеет возможности обратного чтения памяти пикселей;

91 Неверно заданы размерности массива индексов цвета. Описание функции в соответствии с п. 2.11.2.

3.9.8.3. УЗНАТЬ ЦВЕТ ПИКСЕЛЯ

СТОТ. СТАК. СГОТ Уровень 0а.

INQUIRE PIXEL.

Параметры:

Вх идентификатор станции    И

Вх точка Р    МК    Т

Вых индикатор ошибок    Ц

Вт индекс цвета    (—I ... п)    Ц.

Действие:

После применения текущего преобразования нормирования и преобразования станции точку Р накладывают на пиксель. Возвращается индекс цвета этого пикселя. Если индекс цвета не может быть выяснен (например точка Р преобразуется так, что позиции пикселя находится вне носителя изображения), то возвращается значение индекса цвета, равное —1 (т. е. неправильное). Индикатор ошибок может принимать значения:

7 ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

20 Неверно задан идентификатор станции;

25 Указанная станция не открыта;

39    Указанная станция не является станцией вывода или ввода-вывода;

40    Указанная станция не имеет возможности обратного чтения памяти пикселей.

Описание функции в соответствии с п. 2.11.2.

3.9 9. Справочные функции таблицы ошибок ЯГС 3.9.9.1. УЗНАТЬ НАЛИЧИЕ ПЕРЕПОЛНЕНИЯ ОЧЕРЕДИ СОБЫТИЙ

СТОТ. СТАК. СГОТ Уровень тс. INQUIRE INPUT QUEUE OVERFLOW.

Параметры:

Вых индикатор ошибок    Ц;

Вых идентификатор станции    И;

Вых класс устройства ввода

(ВВОД ПОЗИЦИИ, ВВОД ПОСЛЕДОВАТЕЛЬНОСТИ ПОЗИЦИЙ, ВВОД ЧИСЛА, ВЫБОР. УКАЗАНИЕ. ВВОД СТРОКИ) П; Вых номер устройства ввода    (I ...п)    Ц.

Действие:

Страница 183

С. 180 ГОСТ 27817-88 (СТ СЭВ 6177-88)

Если очередь событий переполнилась после выполнения функции ОТКРЫТЬ ЯГС или последнего обращения к функции УЗНАТЬ НАЛИЧИЕ ПЕРЕПОЛНЕНИЯ ОЧЕРЕДИ СОБЫТИИ, возвращается идентификатор логического устройства ввода, вызвавшего переполнение очереди. Эта запись о переполнении удаляется из таблицы ошибок.

Индикатор ошибок может принимать значения:

7    ЯГС не находится в состоянии СТОТ, СТАК или СГОТ;

148    Очередь событий не переполнялась после открытия ЯГС или после последнего обращения к функции УЗНАТЬ НАЛИЧИЕ ПЕРЕПОЛНЕНИЯ ОЧЕРЕДИ СОБЫТИИ;

149    Очередь событий переполнялась, но соответствующая станция была закрыта.

Описание функции в соответствии с пп. 2.8.5, 2.11.2.

3.10. Вспомогател ьк ые функции

3.10.1.    СФОРМИРОВАТЬ МАТРИЦУ ПРЕОБРАЗОВАНИИ

ГЯОТ. СТОТ. СТАК. СГОТ Уровень 1а.

EVALUATE TRANSFORMATION MATRIX.

Параметры:

Вх неподвижная точка МК или НК    Т;

Вх вектор сдвига    МК или НК    2хД;

Вх угол поворота в радианах (положительный,

если против часовой стрелки)    Д;

Вх коэффициент масштабирования    2хД;

Вх переключатель координат    (МК. НК)    П;

Вых матрица преобразований сегмента    2хЗхД.

Действие:

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