Интерактивные графические системы

 

 
СОДЕРЖАНИЕ

ВВЕДЕНИЕ  ………………………………………………………………....3

1  История компьютерной графики………………………………………...5

1.2  Приложения компьютерной графики………………………………….8

1.3 Компьютерная графика  в компьютерном моделировании.…………...9

2  ВИДЕОАДАПТЕРЫ……………………………………………………….…11

2.1  Мониторы.................................................................................................11

2.2  Видеоадаптеры EGA/VGA……………………………………………..12

3  ИНТЕРАКТИВНЫЕ ГРАФИЧЕСКИЕ СИСТЕМЫ…………………………………...14

3.1  Графические языки высокого уровня………………………………....15

3.2  Синтаксические расширения  алгоритмических языков……………..16

3.3  Процедурные графические  языки……………………………………..20

3.4  Языки диалога…………………………………………………………..23

3.5 Стандартизация ИГС……………………………………………………25

3.6 Логическое и физическое  представление изображений в  ИГС. Операции над изображениями…………………………………………………………27 
3.7 Основные элементы структуры ИГС. ……………………………….…..28

3.8 Проектирование ИГС……………………………………………………….29

3.9 Прикладная модель ИГС.  Способы построения прикладной  модели…31

3.10Интерфейс пользователя. Принципы разработки интерфейса  пользователя……………………………………………………………………31

3.11  Выводы………………………………………………………………….32

ЗАКЛЮЧЕНИЕ………………………………………………………...…..33

СПИСОК ИСПОЛЬЗУЕМОЙ ЛИТЕРАТУРЫ…………………………..33

 

 

 

АННОТАЦИЯ

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

ВВЕДЕНИЕ

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

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

Цель  данной курсовой работы – охарактеризовать понятие «Интерактивная графическая система», изучить принципы ее работы.

Задачи курсовой работы:

   -раскрыть понятие   компьютерная графика  и интерактивная  графическая система;

-понять принципы работы  интерактивной графической системы   и её задачи;

  -охарактеризовать графические  языки высокого уровня и языки  диалога. 
  - рассмотреть основные элементы структуры ИГС 

Объектом исследования данной курсовой работы является компьютерная графика в целом и в частности системы интерактивной машинной графики.

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. ИСТОРИЯ КОМПЬЮТЕРНОЙ ГРАФИКИ

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

История технологий вывода

  Произвольное сканирование  луча. Дисплейная графика появилась как попытка использовать электроннолучевые трубки (ЭЛТ) с произвольным сканированием луча для вывода изображения из ЭВМ. Как пишет Ньюмен "по-видимому, первой машиной, где ЭЛТ использовалась в качестве устройства вывода была ЭВМ Whirlwind-I (Ураган-I), изготовленная в 1950 г." в Массачусетском технологическом институте. С этого эксперимента начался этап развития векторных дисплеев (дисплеев с произвольным сканированием луча, каллиграфических дисплеев). На профессиональном жаргоне вектором называется отрезок прямой. Отсюда и происходит название "векторный дисплей".

  При перемещении луча  по экрану в точке, на которую  попал луч, возбуждается свечение  люминофора экрана. Это свечение  достаточно быстро прекращается  при перемещении луча в другую  позицию (обычное время послесвечения  - менее 0.1 с). Поэтому, для того чтобы изображение было постоянно видимым, приходится его перевыдавать (регенерировать изображение) 50 или 25 раз в секунду. Необходимость перевыдачи изображения требует сохранения его описания в специально выделенной памяти, называемой памятью регенерации. Само описание изображения называется дисплейным файлом. Понятно, что такой дисплей требует достаточно быстрого процессора для обработки дисплейного файла и управления перемещением луча по экрану.

  Обычно серийные векторные  дисплеи успевали 50 раз в секунду  строить только около 3000-4000 отрезков. При большем числе отрезков  изображение начинает мерцать,  так как отрезки, построенные  в начале очередного цикла,  полностью погасают к тому  моменту, когда будут строиться  последние.

  Другим недостатком  векторных дисплеев является  малое число градаций по яркости  (обычно 2-4). Были разработаны, но  не нашли широкого применения  двух-трехцветные ЭЛТ, также обеспечивавшие несколько градаций яркости.

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

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

  Векторные дисплеи  обычно подключаются к ЭВМ  высокоскоростными каналами связи.

  Первые серийные векторные  дисплеи за рубежом появились  в конце 60-х годов. В 1963 г.  был разработан прототип дисплейной  станции IBM 2250 (до осени 1964 г.  работы были засекречены).

  Растровое сканирование  луча. Прогресс в технологии микроэлектроники  привел к тому, с середины 70-х  годов подавляющее распространение  получили дисплеи с растровым  сканированием луча.

  Запоминающие трубки. В конце 60-х годов появилась  запоминающая ЭЛТ, которая способна достаточно длительное время (до часа) прямо на экране хранить построенное изображение. Следовательно, не обязательна память регенерации и не нужен быстрый процессор для выполнения регенерации изображения. Стирание на таком дисплее возможно только для всей картинки в целом. Сложность изображения практически не ограничена. Разрешение, достигнутое на дисплеях на запоминающей трубке, такое же как и на векторных или выше - до 4096 точек.

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

Такие дисплеи подключаются к ЭВМ низкоскоростными каналами связи (типа телефонных).

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

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

  Жидкокристаллические  индикаторы. Дисплеи на жидкокристаллических  индикаторах работают аналогично  индикаторам в электронных часах,  но, конечно, изображение состоит  не из нескольких сегментов,  а из большого числа отдельно  управляемых точек. Эти дисплеи  имеют наименьшие габариты и  энергопотребление, поэтому широко  используются в портативных компьютерах несмотря на меньшее разрешение, меньшую контрастность и заметно большую цену, чем для растровых дисплеев на ЭЛТ

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

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

1.2  Приложения компьютерной графики

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

- компьютерное моделирование,  которое явилось исторически  первым широким приложением компьютерной  графики,

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

- бизнес,

- искусство,

- средства массовой информации,

- досуг.

  В настоящее время  появилось новое, очень интересное  приложение компьютерной графики  - виртуальная реальность.

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

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

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

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

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

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

 

1.3 Компьютерная графика в компьютерном моделировании

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

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

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

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

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

 

2.  ВИДЕОАДАПТЕРЫ

  Первоначально IBM PC выпускались с черно-белым адаптером MDA (Monochrome Display Adapter). Максимальное разрешение составляло 640×350 точек, графические возможности отсутствовали. Следующим был также черно-белый видеоадаптер "Геркулес", выпущенный фирмой Hercules Computer Technology, Inc. Этот адаптер обеспечивает разрешение 720×350 с графическими возможностями.

  Первым цветным видеоадаптером  фирмы IBM стал CGA (Color Graphics Adapter). Разрешение его мало (320×200), цветов мало (до 4), программирование противоестественное. Максимальное разрешение составляет 640×200.

  Затем был выпущен  видеоадаптер EGA - (Enhanced Graphics Adapter). Он обеспечивает разрешение 640×200 при 16 цветах из 64. Максимальное разрешение 640×350.

  Первым видеоадаптером  со сравнительно приемлемыми  характеристиками стал VGA (Video Graphics Array) с максимальным разрешением до 800×600 при 256 цветах.

  Затем фирма IBM разработала  видеоадаптер 8514/A, имевшего параметры более соответствующие сложившимся потребностям - 1024×768 при 256 цветах.

  Последняя разработка  фирмы IBM - видеоадаптер XGA (eXtended Graphics Array) с не самыми современными возможностями 1024×768 при 256 цветах. Он на уровне регистров совместим с VGA.

  Многие фирмы выпускают  улучшенные версии VGA под названиями  Super VGA и Ultra VGA, но общий стандарт отсутствует.

  Фирма Texas Instruments предложила стандарт на программный интерфейс с интеллектуальными видеоадаптерами, использующими графические процессоры TMS 340xx (TIGA-стандарт, Texas Instruments Graphics Architecture). В настоящее это самые мощные видеоадаптеры для IBM PC.

2.1  Мониторы

Для отображения текста и  графики используется несколько  типов мониторов:

-Композитный монитор,  на вход которого подается  композитный сигнал системы NTSC (National Television System Committee), применяемой в телевидении. Используется с видеоадаптером CGA;

-Цифровой монитор, на  вход которого по N проводам подается  сигнал в цифровой форме. Цифро-аналоговое  преобразование выполняется монитором.  На таком дисплее можно получить  до 2N оттенков. Используется с видеоадаптерами  CGA, EGA. Первоначально выпускался CD (Color Display) - простой 16-ти цветный (4 провода), затем ECD (улучшенный цветной дисплей) с 16-ю оттенками из 64, затем многочастотный цифровой, позволяющий работать с различными частотами кадров, и отображающий 16 оттенков из 64. Используется с видеоадаптерами EGA, VGA;

 Аналоговый дисплей,  на вход которого подаются  готовые RGB-сигналы, сформированные видеоадаптером. Используется с видеоадаптерами VGA, SVGA, XGA.

 

 

2.2  Видеоадаптеры EGA/VGA

  Видеоадаптеры EGA и  VGA - более совершенные устройства, более напоминающие уже рассмотренные  нами растровые дисплеи.

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

  Видеопамять имеет  объем, как правило 256 Кбайт, но для EGA может быть и 64 Кбайт. Видеопамять разбита на 4 банка (цветовых слоя). Банки занимают одно адресное пространство таким образом, что по каждому адресу расположено сразу 4 байта по одному байту в каждом слое. Можно запрещать или разрешать запись в отдельные слои памяти при помощи регистра разрешения записи цветового слоя. Для операции чтения в каждый данный момент времени может быть доступен только один слой, задаваемый с помощью регистра выбора читаемого слоя. В большинстве режимов работы видеопамять разделена несколько страниц. При этом одна из них активна и отображается на экране. Запись информации возможна как на активную, так и на неактивные страницы.

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

  Контроллер атрибутов,  используя таблицу цветности,  преобразует информацию о цветах, полученную из видеопамяти, в  информацию для ЭЛТ.

  Контроллер ЭЛТ генерирует  синхроимпульсы управления ЭЛТ.

  Тактовый генератор  управляет временными параметрами  видеоадаптера и доступом от  процессора в слоям видеопамяти.

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

Текстовый режим

В текстовом режиме можно  вывести на экран 25 строк по 40 или 80 символов. Перепрограммировав некоторые  регистры адаптера можно получить для EGA до 43 строк, а для VGA - до 50.

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

Таблицы знакогенератора, задающие внешний вид символов, размещаются  во втором слое видеопамяти. Всего может  быть загружено 4 таблицы для EGA и 8 - для VGA. Одновременно могут быть активными  две таблицы, что дает возможность  отобразить на экране до 512 различных  конфигураций знакомест одновременно. Байт атрибута задает цвета символа  и фона, мерцание и одну из двух активных таблиц знакогенератора.

Графические режимы

Имеется большой набор  графических режимов. В режимах, совместимых с CGA используется только 0-й слой памяти, распределение которого по адресному пространству и интерпретация  значений бит такая же как и для CGA.

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

В одном из режимов, применимом только для VGA, память интерпретируется как линейная последовательность всех четырех слоев. Это режим с  разрешением 320×200 с байтом на пиксель, т.е. с 256 градациями. [4]

 

Графические акселераторы

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

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

- Памятью для сохранения  изображений. В некоторых случаях  используется обычная динамическая  память DRAM, но обычно используется  специализированная видеопамять  VRAM;

- Используемой шиной.  В настоящее время обычно используется PCI;

- Шириной регистров. Чем  шире регистр, тем большее число  пикселей можно обработать за  одну команду. В настоящее время  обычная ширина - 64 бита. В ближайшее  время на рынке появятся акселераторы  с шириной регистров в 128 бит.

 

3 ИНТЕРАКТИВНЫЕ ГРАФИЧЕСКИЕ СИСТЕМЫ

  Задача интерактивной  системы машинной графики при  выполнении вывода заключается  в преобразовании информации  из исходного высокоуровневого  представления предметной области  в представление команд графических  устройств вывода. При выполнении  ввода, наоборот, требуется преобразование  низкоуровневой информации от  физических устройств ввода в высокоуровневую информацию на языке предметной области. [1] 

Классификация систем компьютерной графики.

 

Критерии:

 

1) тип выводимого изображения;

 

2) уровень интерактивности:

 

    -автономное вычерчивание

 

    -интерактивное  вычерчивание

 

    -интерактивное  проектирование

 

3) роль изображения

 

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

 

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

  Ввод информации обеспечивается  с помощью языка диалога. Диалог  обычно осуществляется в виде  команд, содержащих числовые значения, имена, координаты, произвольный  текст. Выполняя ввод команд пользователь работает с тем или иным набором вводных устройств, определяемых лексикой языка - алфавитно-цифровой и функциональной клавиатурами, шаровым указателем (track ball), планшетом (tablett) и т.п.[2]

 

 

3.1  Графические языки высокого уровня

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

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

  Одним из первых  проблемно-ориентированных языков, имеющих средства для описания  геометрической информации, явился  язык АРТ (AUTOMATED PROGRAMMING TOOLS). Этот язык послужил основой для разработки разнообразных систем автоматизации программирования для станков с ЧПУ.

  Система COMPAC (COMPUTER ORIENTED PART CODING) предназначена для формирования  описания объемных тел из объемных  элементов формы - (метод конструктивной  геометрии). Кроме трех базовых  объемных элементов (кубы, цилиндры, конусы), могут использоваться профилированные  детали, получаемые перемещением  замкнутого контура вдоль прямой или дуги, а также тела вращения, получаемые вращением замкнутого контура вокруг оси. Элементы задаются, позиционируются и оразмериваются языковыми конструкциями, напоминающими АРТ .Составление детали из объемных элементов производится с помощью операций объединения, вычитания и отсечения.

Интерактивные графические системы