10.45. Модифицируйте программу из предыдущего упражнения, отобразив текстурный узор на поверхность чайника GLUT.
ГЛАВА 11
Методы интерактивного ввода и графические интерфейсы пользователя
ля того чтобы писать программы и предоставлять входные данные, можно использовать методы и программные команды, рассмотренные в предыдущих главах, однако часто бывает полезно задавать графический вход интерактивно. Во время выполнения программы, например, может потребоваться изменить точку наблюдения или положение объекта на сцене, указав точку на экране, или изменить параметры анимации, используя альтернативную команду меню. В приложениях разработки координаты контрольных точек для построения сплайнов выбираются интерактивно, а в живописи часто применяются методы интерактивного рисования. Существует несколько типов данных, используемых графической программой, и множество методов интерактивного ввода, предназначенных для обработки этих значений данных. Кроме того, в настоящее время интерфейсы систем включают расширенные интерактивные изображения, которые содержат окна, пиктограммы, меню и предполагают использование мыши или другого устройства управления курсором.
ГРАФИЧЕСКИЕ ВХОДНЫЕ ДАННЫЕ
В графических программах используется несколько типов входных данных, например, координаты, значения атрибутов, спецификации строк знаков, значения геометрических преобразований, условия наблюдения и параметры освещения. Многие графические пакеты, включая стандарты ISO и ANSI, предлагают расширенный набор функций ввода, предназначенных для обработки подобных данных. При этом процедуры ввода требуют взаимодействия с программами управления окнами и специфическими аппаратными устройствами. Следовательно, некоторые графические системы, особенно предлагающие аппаратно-независимые функции, часто включают относительно мало интерактивных процедур обработки входных данных.
Стандартный подход к процедурам ввода в графических пакетах - это классифицировать функции согласно типу данных, которые будут обрабатываться каждой функцией. Данная схема позволяет с любого физического устройства, такого как клавиатура или мышь, вводить данные любого класса, хотя почти все устройства ввода работают с некоторыми типами данных лучше, чем с другими.
ЛОГИЧЕСКАЯ КЛАССИФИКАЦИЯ УСТРОЙСТВ ВВОДА
При классификации функций ввода согласно типу данных любое устройство, используемое для ввода заданных данных, называется логическим устройством ввода для данных этого типа. Стандартная классификация логических устройств по входным данным приведена ниже.
LOCATOR Устройство ввода одной точки.
STROKE Устройство ввода набора точек.
STRING Устройство ввода строк.
VALUATOR Устройство ввода скалярного значения.
CHOICE Устройство выбора опции из меню.
PICK Устройство выбора компонента изображения.
УСТРОЙСТВА ВВОДА КООРДИНАТЫ (LOCATOR)
Интерактивный выбор координаты обычно сопровождается размещением курсора в некоторой точке отображаемой сцены, хотя в определенных приложениях могут использоваться и другие методы, например, выбор опции из меню. Для размещения курсора на экране можно использовать мышь, джойстик, трекбол, спейсбол (пространственный манипулятор), координатный манипулятор (thumbwheel), наборный диск (dial), ручной курсор или цифровое перо. Кроме того, указать условия обработки для выбранного положения можно с помощью различных клавиш, кнопок или переключателей.