Сдам Сам

ПОЛЕЗНОЕ


КАТЕГОРИИ







Интерактивная машинная графика





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

 

Классы логических устройств ввода

Логическое устройство представляет прикладной программе значение логического ввода. Тип этих данных определяется классом ввода.

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

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

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

Классы ввода

ВВОД ПОЗИЦИИ (LOCATOR) – представляет прикладной программе координаты точки (позицию) в мировых координатах. Позицию определяет оператор путем установки устройства ввода (например, перемещая следящую стрелку, перекрестье с помощью мыши). Эквивалент названия LOCATOR – локатор, ввод координат, позиционирование.

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

ВВОД ЧИСЛА (VALUATOR) – предоставляет прикладной программе вещественное число. Это значение определяет оператор, управляя устройством ввода числа (устанавливая потенциометр или вводя число с клавиатуры). Эквивалент названия VALUATOR – валюатор, датчик, оценщик, численный ввод.

ВЫБОР альтернативы (CHOICE) – предоставляет прикладной программе неотрицательное целое число, соответствующее выбору из некоторого числа возможностей. Эквивалент названия (CHOICE) – кнопка, альтернатива.

УКАЗАНИЕ объекта (PICK) – предоставляет прикладной программе имя сегмента и идентификатор указания. Сегмент идентифицируется оператором путем отметки части выведенного изображения. Эквивалент названия (PICK) – указка, обнаружение, выбор элемента.

ВВОД СТРОКИ (STRING) – предоставляет прикладной программе последовательность литер; строка набирается оператором с помощью устройства ввода строки (используется алфавитно-цифровая клавиатура). Эквивалент названия (STRING) – ввод текстовых строк, ввод последовательности символов.

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

Режимы ввода

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

Режим работы ввода

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

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

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

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

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

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

 

 







ЧТО ПРОИСХОДИТ, КОГДА МЫ ССОРИМСЯ Не понимая различий, существующих между мужчинами и женщинами, очень легко довести дело до ссоры...

Что способствует осуществлению желаний? Стопроцентная, непоколебимая уверенность в своем...

Система охраняемых территорий в США Изучение особо охраняемых природных территорий(ООПТ) США представляет особый интерес по многим причинам...

ЧТО ТАКОЕ УВЕРЕННОЕ ПОВЕДЕНИЕ В МЕЖЛИЧНОСТНЫХ ОТНОШЕНИЯХ? Исторически существует три основных модели различий, существующих между...





Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:


©2015- 2023 zdamsam.ru Размещенные материалы защищены законодательством РФ.