Студопедия  
Главная страница | Контакты | Случайная страница

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Что такое интерактивная графика?

Читайте также:
  1. В экономике существует такое понятие как чистая производительность капитала, которое связано с такими понятиями как доходность капиталовложений и спрос на капитал.
  2. Введение. Что такое анестезиология и анестезия.
  3. Вопрос 2. Что такое замысел товара?
  4. Вопрос 20 Что такое ресурсы живых существ
  5. Вопрос № 31 Хайдеггер М. Что такое - философия?
  6. Вопрос. Что такое кадровые, массовые и универсальные партии?
  7. До сих пор вряд ли кто писал такое, дело не в разуме, автору удалось увидеть то, что есть на повестке дня, хотя ЭТО с первого (даже второго) взгляда не видно.
  8. Интерактивная форма: интерактивная лекция, эвристическая беседа, дискуссия и работа с видео- и аудиоматериалами.
  9. К моему удивлению Драйг сказал это с небольшим удовлетворением. Ну, раньше ведь у него было такое же тело.
  10. Лекция №1 Что такое креатив. Творческая личность.

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

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

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

 

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

В динамической интерактивной машинной графике компьютер используется для подготовки и визуализации графических данных. Однако интерактивная графика позволяет наблюдателю в реальном масштабе времени влиять на весь процесс представления изображения. Чтобы убедиться в серьезности ограничений, определяемых условиями работы в реальном времени, рассмотрим задачу вращения объемного изображения, состо­ящего из 1000 линий, со скоростью 15 град/с. Картинка из 1000 линий в большинстве слу­чаев представляется матрицей 1000 х 4 однородных координат конечных точек линий. Вращение, как правило, представляется путем умножения этой матрицы на матрицу преобразования размером 4 х 4. Для проведения такого матричного Умножения требуется выполнить 16 тыс. операций умножения, 12 тыс. операций сложения и 1 тыс. операций деления вещественных чисел. Если умножение осу­ществляется программно, то для того чтобы выполнить все операции вращения, может потребоваться значительное время. Обычный универсальный компьютер с процессором вещественной арифметики, способным выполнять операции умно­жения с быстродействием 3.6 мкс, сложения —за 2.6 мкс и деления со скоро­стью 5.2 мкс, может выполнить такое матричное умножение за 0.1 с. Посколь­ку для того, чтобы картинка на экране начала двигаться, она должна перери­совываться не менее 30 раз в секунду, то становится очевидным, что в случае с данным примером картинка не сможет непрерывно перемещаться по экрану. Даже если предположить, что изображение обновляется только 15 раз в секун­ду, т. е. при повороте на каждый градус, то и в этом случае программная ре­ализация не позволяет получить эффект непрерывного вращения и исключает возможность получения действительно реалистичных изображений. Существует множество способов достижения реального интерактивного режима визуализации изображения: использование более мощного дополнительного компьютера или более тщательное программирование, уменьшающее время выполнения матричного умножения. Однако в любом случае обязательно будет достигнут мо­мент, когда всякое дальнейшее улучшение станет уже невозможным. Уменьше­ние сложности изображения также не даст нужного эффекта, так как при этом может оказаться неприемлемым качество картинки. Однако операция матрич­ного умножения, необходимая для манипулирования изображением из нашего примера, для действительно очень сложных картинок может осуществляться на уровне микропрограмм или с помощью специализированных цифровых умножи­телей, применение которых всегда было наиболее эффективным и экономичным.

В интерактивной компьютерной графике как одной из разновидностей систем «человек–машина» учитываются психологические и физиологические возможности человека. В общем случае это сводится к выполнению требований: инженерной психологии к графическому дисплею как устройству отображения информации, воспринимаемой человеком, и терминалу как рабочему месту «человек-оператора»; к программному обеспечению ИКГ и языкам графического диалога, которые должны обеспечить преодоление ряда психологических барьеров, в частности исключить скуку и разочарование.

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

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

· представление изображений в машинной графике;

· подготовка изображений для вывода;

· визуализация предварительно подготовленных изображений;

· взаимодействие с изображением.

В дальнейшем под термином «изображение» мы будем понимать множество линий, точек, текстов и т.п., выводимых на графическое устройство

1-2 ПРЕДСТАВЛЕНИЕ ИЗОБРАЖЕНИЙ

Многие алгоритмы интерпретируют изображения как набор многоугольников или ребер, причем каждый многоугольник или ребро в свою очередь может быть представлен с помощью точек (вершин). Таким образом, точки явля­ются основными строительными блоками изображения. Не менее важны так­же и алгоритмы размещения таких точек. В качестве иллюстрации рассмот­рим единичный квадрат в первом квадранте координатной плоскости. Этот квадрат может быть представлен своим четырьмя вершинами (см. рис.) P1(0,0), Р2(1,0), Р3(1,1), P4(0.1). Соответствующая алгоритмическая нота­ция может выглядеть следующим образом:

Последовательно соединить P1 P2 Рз Р4 Р1

Единичный квадрат можно также представить с помощью его четырех ре­бер Е1 = P1-Р2, Е2 = Р2Р3; Е3 = Р3Р4, E4 = P4P1- Здесь алгоритмической

нотацией служит 'Следующая запись:

Последовательно изобразить Е1 Е2 Е3 Е4

И наконец, для описания единичного квадрата в виде многоугольника можно использовать либо точки, либо ребра. Например, S1 — Р1Р2Р3Р4Р1, или S1 — Р1Р4Р3Р2Р1 или S1 = E1E2E2E1. В зависимости от размерности координатного пространства основные строительные блоки (точки) можно представить либо как пары, либо как тройки чисел. Таким образом, координаты (x1,y1) или {x1,y1,z1) определяли бы точку на плоскости или в пространстве. Две точки задавали бы отрезок или ребро, а совокупность из трех и более точек — многоугольник. По­строение кривых осуществляется обычно путем их аппроксимации короткими от­резками. Символы представляются уже более сложным образом — они образуются из совокупности различных кривых или определяются матрицей точек. Однако в

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

ПОДГОТОВКА ИЗОБРАЖЕНИЙ ДЛЯ ВЫВОДА

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

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

во-первых, перемещение пера и курсора, след курсора (в дальнейшем просто курсор), невидимая точка;

во-вторых, изображение линии между двумя точками;

в третьих, вывод точки в заданном месте.

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

Местоположения точки могут быть описаны с помощью вещественных (с пла­вающей точкой) или целых чисел. В случае применения целых чисел возникает множество проблем, связанных с ограниченной длиной слова компьютера. Для представления целых координат, как правило, используется полное машинное сло­во. Наибольшее целое число, занимающее полное машинное слово и необходимое для представления величин со знаком из положительного и отрицательного диа­пазонов, равно 2n-1 - 1, где n — количество битов в слове. Для 16 битового слова это число равно 32 767. Для многих приложений этого бывает вполне достаточно, однако возникают серьезные проблемы, когда требуются большие числа, которые невозможно представить с помощью одного слова компьютера. Эту трудность можно преодолеть, например, воспользовавшись относительными координатами в случае, когда их величина не превышает 60000. При этом в абсолютной системе координат устанавливаются точки с координатами (30000,30000), а затем с по­мощью относительных координат (30000,30000) строится точка с координатами (60 000,60 000). Однако этот способ обладает значительным недостатком: попытка сохранить относительные координаты, превышающие максимально допустимую величину, вызывает переполнение. В большинстве компьютеров результатом це­лочисленного переполнения является генерация чисел с противоположным зна­ком и неверным абсолютным значением.

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

В системе однородных координат n-мерное пространство представляется n + 1 измерением, т. е. трехмерные координаты, однозначно задаваемые тройкой (x, у, z), выражаются через четыре координаты (hx, hy1 hz, h), где h — произволь­ный множитель. Если все координатное пространство в 16-битовом компьютере представляется числами меньше 32 767, то h будет равно 1, а координаты бу­дут представляться путем прямых преобразований. Однако если хотя бы одна из координат превышает число 32 767, например, х — 60 000, то преимущества, ис­пользования однородны]^ координат становятся очевидны. В данном случае мы установили h = 1/2 и координаты точки теперь можно представить в 16-битовом компьютере как (30000, у/2, z/2, 1/2). Однако в этом случае неизбежно сни­жение разрешающей способности, так как, например, значения х = 60000 и 60001 теперь представляются одинаковой однородной координатой. Фактически разре­шение ухудшается для всех координат даже в том случае, если только одна из них превышает максимально допустимое для целых чисел значение.

ПРЕДСТАВЛЕНИЕ ПРЕДВАРИТЕЛЬНО ПОДГОТОВЛЕННОГО

ИЗОБРАЖЕНИЯ

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

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

 

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

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

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

 


 



.

 


1.4 Трехмерная пирамида видимости.

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

Процесс отсечения значительно упрощается в случае так называемых регу­лярных окон, ребра которых параллельны осям координат.. На рис, 1-3 показан процесс отсечения на плоскости. Линии удаляются, выводятся на экран полностью или частично в зависимости от их ме­стоположения относительно границ окна. В трехмерном пространстве регулярное окно или отсекающий объем представляет собой прямоугольный параллелепипед (брус) или, для перспективных видов, усеченную пирамиду (пирамиду видимо­сти). На рис. 1-4 показана типичная пирамида видимости; ближайшая к наблюда­телю грань помечена символом N, наиболее удаленная — символом F, а стороны образованы гранями SL, SR, ST и SB.

Поле зрения — это область на экране дисплея, предназначенная для размеще­ния попавшего в окно изображения. Регулярное поле зрения на плоскости зада­ется левым, правым, верхним и нижним ребрами ограничивающего прямоуголь­ника. Поле зрения может быть определено в реальных физических координа­тах устройства, часто задаваемых в виде целых чисел. Координаты поля зрения могут быть нормализованы по некоторому произвольному диапазону, например, 0 ≤ x ≤ 1 <!. 0< y ≤ 1 задаваться в виде вещественных чисел. Содержание одного окна может быть выведено в нескольких полях зрения одного и того же устройства (рис. 1-5), Сохранение пропорций окна и поля (полей) зрения поз­воляет избежать искажений. Отображение на поле зрения графических данных. попавших после отсечения в окно, предусматривает выполнение операций пере­носа и масштабирования (приложение А).

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


 



База данных в мировой системе координат

 


Рис, 1-5 Несколько полей зрения для одного окна.

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

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

Основные направления компьютерной графики:

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

· развития - стремительно развивающаяся компьютерная графика должна обслуживать свои потребности, расширяя и совершенствуя их;

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

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

 

К основным достоинствам компьютерной графики относятся:

· наиболее естественные средства общения с ЭВМ;

· хорошо развитый двухмерный и трехмерный механизм распознавания образов позволяет очень быстро и эффективно воспринимать и обрабатывать различные виды данных. Как гласит старинная китайская пословица: "Одна картинка стоит 1000 слов";

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

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

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

 




Дата добавления: 2015-02-16; просмотров: 127 | Поможем написать вашу работу | Нарушение авторских прав




lektsii.net - Лекции.Нет - 2014-2024 год. (0.012 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав