что такое графический примитив
Графический примитив
Смотреть что такое «Графический примитив» в других словарях:
графический примитив — Элементарные объекты программ рисования (отдельные окружности, линии, прямоугольники, кривые и т.д.), из которых складывается изображение. [http://www.morepc.ru/dict/] Тематики информационные технологии в целом EN drawing entityGDPgraphics draw… … Справочник технического переводчика
выходной (графический) примитив — элемент отображения — [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике ЭВМ. Москва 1993] Тематики информационные технологии в целом Синонимы элемент отображения EN output primitive … Справочник технического переводчика
Примитив — Абстрактное независимое от реализации представление взаимодействий между пользователем услуг и поставщиком услуг Источник: ГОСТ 28696 90: Системы обработки информации. Передача данн … Словарь-справочник терминов нормативно-технической документации
Графический конвейер — Графический конвейер аппаратно программный комплекс визуализации трёхмерной графики. Содержание 1 Элементы трехмерной сцены 1.1 Аппаратные средства 1.2 Программные интерфейсы … Википедия
примитив вывода — Базовый графический элемент, который может использоваться для построения изображения. Примечание Примитивами вывода могут быть, например, точка, отрезок линии, последовательность символов. [ГОСТ 27459 87] Тематики машинная графика EN output… … Справочник технического переводчика
Примитив вывода — 17. Примитив вывода Output primitive Базовый графический элемент, который может использоваться для построения изображения. Примечание. Примитивами вывода могут быть, например, точка, отрезок линии, последовательность символов Источник: ГОСТ 27459 … Словарь-справочник терминов нормативно-технической документации
GKS — Эту статью следует викифицировать. Пожалуйста, оформите её согласно правилам оформления статей. В это … Википедия
компьютерная графика — визуализация изображения информации на экране дисплея (монитора). В отличие от воспроизведения изображения на бумаге или ином носителе, изображение, созданное на экране, можно почти немедленно стереть или (и) подправить, сжать или растянуть,… … Энциклопедический словарь
Векторная графика — Пример, показывающий разницу между векторной, фрактальной и растровой графикой при увеличении. a: исходное векторное изображение; b: иллюстрация, увеличенная в 8 раз как векторное изображение; c: иллюст … Википедия
элемент-рисунок — графический примитив — [Е.С.Алексеев, А.А.Мячев. Англо русский толковый словарь по системотехнике ЭВМ. Москва 1993] Тематики информационные технологии в целом Синонимы графический примитив EN drawing entity … Справочник технического переводчика
Использование примитивов в редакторах
Графика в общем смысле состоит из трех основных элементов, в отличие от большого разнообразия графических приложений: пикселя, линии и полигона. Основная из этих элементарных структур — пиксель. Графические примитивы в графическом редакторе представляют собой простой объект, необходимый для создания или построения сложных изображений. Графика в программах для создания векторных изображений построена на таких элементах, как точка, линия и состоящие из них простые фигуры. Это круг, треугольник и квадрат, которые также можно назвать полигонами. Поэтому чаще всего при работе в графическом редакторе примитивами называются именно эти простые фигуры. Для растровой графики таким элементом будет пиксель.
Что такое пиксель?
Пиксель — это графический примитив, который является точкой света. Это всего лишь одна маленькая точка, часть растрового изображения. Хотя он не имеет структуры, но, безусловно, является строительным блоком. Следовательно, пиксель — графический примитив. Разрешение ЭЛТ-мониторов связано с размером этой точки и ее диаметром, которое может меняться. Отношение расстояния между центрами двух соседних горизонтальных пикселей к расстоянию между вертикальными называется соотношением пикселей. Оно должно учитываться в алгоритмах, генерирующих изображения.
Дисплейный файл и кадровый буфер
Графическим примитивом является также программное обеспечение, при помощи которого на экран выводится определенное изображение. Один из них — дисплейный файл. Он является массивом некоррелированных данных или набором команд, которые необходимы для правильной отрисовки изображения на экране. Массивы заполняются из данных списка, хранящегося в памяти. В результате их обработки на ЭЛТ-мониторе создается картинка, состоящая из пикселей разного цвета. Кадровым буфером называют устройство для хранения и вывода видео на экран. Обычно это устройство или вид памяти, которое хранит несколько кадров видеоизображения. Изображение находится в памяти в виде массива данных, где записаны последовательные цветовые значения каждого пикселя.
Управление дисплеем и дисплейный процессор
Система управления дисплеем позволяет управлять видом изображения на экране и помогает пользователю просматривать его под желаемым углом или менять размер, уменьшая и увеличивая его. Дисплейный процессор в это время прочитывает данные из буфера и преобразовывает их в картинку. Он может повторять это действие около 30 раз в секунду, чтобы сохранять изображение на экране. Для обновления изображения нужно изменить содержимое буфера.
Графические редакторы
Графическое программное обеспечение — это программа или набор программ, которые позволяют управлять визуальными изображениями в компьютерной системе. Существует два типа графики, а именно растровая и векторная.
Растровая графика, или растровое изображение — это структура данных с точечной матрицей, представляющая в целом прямоугольную сетку пикселей.
Векторная графика использует геометрические примитивы. Что такое графический примитив в векторной графике, уже говорилось выше. Это точки, линии, кривые и многоугольники (или полигоны) или векторные изображения. Такие фигуры основаны на математических выражениях, для представления изображений в компьютерной графике. Конвертировать векторную графику в растровую довольно просто, но из растровой в векторную гораздо сложнее. Некоторые программы пытаются это сделать. В дополнение к статической графике, есть анимация и программное обеспечение для редактирования видео. Компьютерная графика также может использоваться другим программным обеспечением для редактирования, таким как Adobe Photoshop, Pizap, Microsoft Publisher, Picasa и т. д. Еще один вариант — это программы для анимации, и видеоредакторы, такое как Windows Movie Maker.
Точки и линии в графике
Теперь, когда стало немного понятнее, что такое графический примитив, внимательнее рассмотрим каждый из них. Начнем с точек и линий. Точки используются во всей графике как строительные блоки для более сложных фигур. Например, треугольники созданы при помощи трех точек, соединенных между собой. Другим фундаментальным геометрическим объектом в 2D-графике является линия. Для создания прямой линии нужны две точки.
Линия как примитив
Графическими примитивами являются также и линии, особенно прямые. Каждая из них представляют собой основной строительный блок для линейных графиков, столбчатых и круговых диаграмм, двух- и трехмерных графиков математических функций, инженерных чертежей и архитектурных планов. В компьютерной графике прямая линия настолько проста, что сложно не считать ее изображение графическим примитивом. Прямые линии в программировании могут быть разработаны двумя различными способами. Первый вариант называется структурным методом. Он определяет, какие пиксели должны быть установлены перед рисованием линии. Второй вариант — условный метод, который учитывает определенные условия, чтобы найти нужные пиксели.
Генерация линий
Для того чтобы понять, что такое графический примитив, нужно разобраться, как он создается. В математике и информатике существуют специальные алгоритмы, которые являются пошаговой инструкцией для выполнения расчетов. Алгоритмы созданы для расчета, обработки данных и их автоматизированного анализа. Для того чтобы нарисовать линии на экране компьютера, используется так называемый алгоритм Брезенхэма. Он определяет, как лучше всего построить линию, и формирует оптимальный вариант создания прямой линии между двумя заданными точками, закрашивая определенные пиксели на мониторе.
Алгоритм был разработан еще в 1962 году и до сих пор актуален. Он использует только целочисленное сложение, вычитание и смещение битов, когда цифры перемещаются или сдвигаются влево или вправо. Все они являются очень дешевыми операциями в стандартных компьютерных архитектурах. Это один из самых ранних алгоритмов, разработанных в области компьютерной графики. Незначительное расширение исходного алгоритма также касается рисования кругов.
Цифровой дифференциальный анализатор
Полигоны или многоугольники
Примитивами в векторном графическом редакторе являются полигоны, или многоугольники. Это замкнутая область изображения, ограниченная прямыми или изогнутыми линиями и заполненная одним сплошным цветом. Примитивами в графическом редакторе называются двумерные фигуры, поэтому многоугольник представляет собой замкнутую плоскую фигуру. Полигон является важным графическим примитивом. С ним обращаются как с единым целым, так как изображения объектов из реального мира состоят по большей из части многоугольников.
Полигоны, или многоугольники, используются в компьютерной графике для создания изображений, которые выглядят трехмерными. Обычно треугольные полигоны применяют при моделировании поверхности объекта, выбирая вершины и визуализируя объект как модели из проволоки. Это быстрее для создания объемного изображения, чем проработка теней. Также использование полигонов является одним из этапов в процессе проектирования компьютерной анимации.
Заполнение полигонов
Заполнение многоугольников необходимо для того, чтобы рассмотреть всю область при отрисовке изображения. Если он не заполнен, будут отрисованы только точки по периметру полигона, а внутренняя часть останется пустой. При заполнении полигона учитывается его внутренняя часть. Все пиксели в границах полигона заливаются заданным цветом или узором. Чтобы определить, какие пиксели находятся внутри полигона, а какой находится снаружи, используются различные алгоритмы.
Графические примитивы и их атрибуты
Графические объекты размещаются на плоскости и в пространстве. На плоскости их местоположение определяется прямоугольной двухмерной системой координат, оси которой (x,y) пересекаются в начале системы координат, перпендикулярны друг к другу и имеют определенный единичный размер и направление. В пространстве местоположение графических объектов определяется прямоугольной трехмерной системой координат, оси которой (x,y.z) пересекаются в начале системы координат, перпендикулярны друг к другу и имеют определенный единичный размер и направление. Чаще всего масштаб единичных размеров осей системы координат равен единице, в этом случае единичный элемент системы координат равен квадрату в плоскости или кубу в пространстве. Если масштабы соотношений единичных размеров осей отличны от единицы, то в этом случае единичный элемент системы координат равен прямоугольнику в плоскости или параллелепипеду в пространстве.
В компьютерной технике единичный элемент изображения на плоскости называется пиксел, а единичный элемент в пространстве – воксел.
Таким образом, пиксел может быть квадратом или прямоугольником, а воксел – кубом или параллелепипедом.
Примитиваминазываются такие графические объекты, из которых могут быть составлены более сложные по геометрической форме графические объекты. Например, для прямой линии точка является примитивом, так как прямая линия может быть составлена из точек. Для треугольника (часть плоскости) примитивами будут и точка и прямая линия, так как треугольник можно составить и из точек и из прямых линий. Из треугольников можно сформировать любую кривую поверхность, а из частей кривых поверхностей можно сформировать любой сложности тело, ограниченное этими частями поверхностей.
Таким образом, каждые предыдущие элементы, из которых составляется графический объект, считаются примитивами для этого графического объекта.
Атрибутамиграфических объектов называются описания, характеризующие свойства данного графического объекта.
Например, Окружность А (радиус; координаты центра; цвет). Графический объект окружность имеет атрибуты: величина радиуса в единицах измерения, величины координат размещения центра окружности в единицах измерения (x,y) и номер цвета. Запись атрибутов в скобках: Окружность А (35; 10,15; 63), что означает Окружность А радиусом 35 мм, центр которой расположен в точке с координатами x = 10 мм, y = 15 мм, красного цвета.
Атрибуты могут иметь различные значения и изменяться в ходе преобразований графического объекта.
Часто используемые в геометрическом моделировании графические объекты отнесем к примитивам. Рассмотрим такие геометрические примитивы.
Точка– с математической точки зрения бесконечно малая величина, размещенная в определенном месте пространства. В компьютерной технике физическая величина точки равна размеру пиксела на плоскости или размеру воксела в пространстве.
Линия— с математической точки зрения состоит из бесчисленного числа соприкасающихся друг с другом в определенном направлении точек, бесконечно тонкая и расположена в пространстве по определенному математическому закону.
Если все соседние точки линии связаны друг с другом линейной зависимостью, то такая линия называется прямой.
Если все соседние точки линии связаны друг с другом нелинейной зависимостью, то такая линия называется кривой.
Если при движении по линии от начальной точки в одном направлении мы возвращаемся в начальную точку, то такая линия называется замкнутой, например, окружность, эллипс и т.п.
Если при движении по линии от начальной точки в одном направлении мы не можем попасть в начальную точку, то такая линия называется разомкнутой, например, парабола, гипербола и т.п.
В компьютерной технике физическая толщина линии равна размеру пиксела на плоскости или размеру воксела в пространстве.
Поверхность— с математической точки зрения состоит из бесчисленного числа соприкасающихся друг с другом в произвольных направлениях точек, бесконечно тонкая и расположена в пространстве по определенному математическому закону. Если все соседние точки поверхности связаны друг с другом линейной зависимостью, то такая поверхность называется плоскостью. Если все соседние точки поверхности связаны друг с другом нелинейной зависимостью, то такая поверхность имеет кривизну и называется кривой поверхностью илипросто поверхностью. В данном случае имеется в виду, что плоскость есть частный случай поверхности.
Замкнутая поверхность. Если поверхность пересекать плоскостью во всех возможных направлениях при этом всегда получается замкнутая линия пересечения (линия точки которой принадлежат одновременно плоскости и поверхности).
Например, сферическая, эллиптическая и т.п. поверхности.
Разомкнутая бесконечная поверхность. Если поверхность пересекать плоскостью во всех возможных направлениях и даже в одном случае при этом получается разомкнутая линия.
Например, пересечение двух плоскостей дает бесконечную прямую линию, пересечение параболоидной поверхности плоскостью по оси симметрии дает разомкнутую линию параболу, поэтому и плоскость и параболическая поверхность являются бесконечными поверхностями. Замкнутые поверхности не могут быть бесконечными поверхностями.
Ограниченная поверхность – это выделенная часть поверхности, имеющая ограничения в определенных направлениях. Части поверхности могут быть представлены в виде лежащих на поверхности линий ограничения и точек выбора необходимой вам части поверхности. Например, линия окружности, лежащая на плоскости, и точка выбора, лежащая внутри окружности на плоскости, выделяют часть плоскости – круг. Если мы поставим точку выбора вне окружности, то мы получим плоскость, в которой вырезано круглое отверстие. В компьютерной технике физическая толщина поверхности равна размеру пиксела на плоскости или размеру воксела в пространстве.
Реальные графические объекты всегда имеют конечный размер, поэтому графический объект занимает определенную часть пространства, которое ограничено замкнутой поверхностью, состоящей из одной или множества частей поверхностей, пересекающихся друг с другом. Для определения, какая часть пространства принадлежит данному графическому объекту, внутри него должна находится точка выбора, от которой можно дойти до любой ограничивающей данный графический объект поверхности.
Геометрическое моделирование – это процесс создания графических объектов.
Геометрическая модель – модель графического объекта, отражающая геометрические свойства объекта–оригинала. Модель всегда является упрощением оригинала и обычно тем или иным искажением его. Она может быть представлена как самостоятельное физическое изделие или быть составлена из элементов сложной моделирующей установки (мозга или компьютера, то есть мы можем формировать графический объект в мыслях, запоминать и записывать его ручными способами или с применением компьютера).
Задачами геометрического моделированияявляются:
— создание моделей графических объектов,
— размещение моделей графических объектов в сцене (ограниченная пространственная прямоугольная система координат),
— организация движений графических объектов (анимация),
— представление изображений графических объектов на моно и стереоэкранах (визуализация),
— формирование чертежной документации,
— создание слайдов и видеофильмов.
Эти задачи решаются в системах автоматизированного проектирования (САПР), системах связи, геоинформационных системах (ГИС), при моделировании атмосферных и водных процессов, во всевозможных тренажерах, играх, художественном дизайне, кино и телевидении и во многих других областях, где используется современная компьютерная техника.
Технология геометрического моделирования
Геометрическое моделирование на компьютере исследуемых конструкций и процессов представляет собой сложный алгоритмический процесс, включающий в себя:
— выбор или разработку математической модели описания геометрических объектов;
— размещение геометрических объектов в сцене с учетом ориентации;
— описания динамики объектов;
— перевод математической модели в машинную модель в форматах, минимизирующих вычислительный процесс обработки модели;
— преобразование математической и машинной моделей;
— визуализация машинной модели.
Для ввода и коррекции геометрической информации создаются графические редакторы.
Графические редакторы содержат библиотеки геометрических примитивов, такие как точка, линия, плоскость, поверхность, простейшие геометрические тела (куб, параллелепипед, сфера, цилиндр, конус, тор и их модификации).
Что такое графический примитив
Предмет и область применения компьютерной графики
80% информации человек получает посредством зрения. Поэтому необходимо активное развитие способов человеко-машинного взаимодействия. Основная функция компьютера – обработка информации (в том числе и графической).
Появившись в 1950-х годах, она поначалу давала возможность выводить лишь несколько десятков отрезков на экране. В наши дни средства компьютерной графики позволяют создавать реалистические изображения, не уступающие фотографическим снимкам Трехмерные изображения используются в медицине (компьютерная томография), картографии, полиграфии, геофизике, ядерной физике и других областях. Телевидение и другие отрасли индустрии развлечений используют анимационные средства компьютерной графики (компьютерные игры, фильмы). Общепринятой практикой считается также использование компьютерного моделирования при обучении пилотов и представителей других профессий (тренажеры). Знание основ компьютерной графики сейчас необходимо и инженеру, и ученому.
Конечным результатом применения средств компьютерной графики является изображение, которое может использоваться для различных целей
Сферы применения компьютерной графики
Сферы применения компьютерной графики включает четыре основных области.
1. Отображение информации
Проблема представления накопленной информации (например, данных о климатических изменениях за продолжительный период, о динамике популяций животного мира, об экологическом состоянии различных регионов и т.п.) лучше всего может быть решена посредством графического отображения.
Ни одна из областей современной науки не обходится без графического представления информации. Помимо визуализации результатов экспериментов и анализа данных натурных наблюдений существует обширная область математического моделирования процессов и явлений, которая просто немыслима без графического вывода. Например, описать процессы, протекающие в атмосфере или океане, без соответствующих наглядных картин течений или полей температуры практически невозможно. В геологии в результате обработки трехмерных натурных данных можно получить геометрию пластов, залегающих на большой глубине.
4. Графический пользовательский интерфейс
Основные направления в компьютерной графике
В современной компьютерной графике можно выделить следующие основные направления:
изобразительная компьютерная графика, обработка и анализ изображений, анализ сцен (перцептивная компьютерная графика), компьютерная графика для научных абстракций (когнитивная компьютерная графика, т.е. графика, способствующая познанию).
Изобразительная компьютерная графика своим предметом имеет синтезированные изображения. Основные виды задач, которые она решает, сводятся к следующим:
· построение модели объекта и формирование изображения;
· преобразование модели и изображения;
· идентификация объекта и получение требуемой информации.
Обработка и анализ изображений касаются в основном дискретного (цифрового) представления фотографий и других изображений. Средства компьютерной графики здесь используются для :
· повышения качества изображения;
Анализ сцен связан с исследованием абстрактных моделей графических объектов и взаимосвязей между ними. Объекты могут быть как синтезированными, так и выделенными на фотоснимках. К таким задачам относятся, например, моделирование «машинного зрения» (роботы), анализ рентгеновских снимков с выделением и отслеживанием интересующего объекта (внутреннего органа), разработка систем видеонаблюдения.
Краткая история
Время больших компьютеров (эра до персональных компьютеров).
Особенности: пользователь не имел доступа к монитору, графика развивалась на математическом уровне и выводилась на принтере в виде текста, напоминающего на большом расстоянии изображение. Графопостроители появились в конце 60-х годов.
Первые компьютеры с мощностью, достаточной для выполнения задач цифровой обработки изображений появились в начале 60-х. Айвэн Сазерленд в 1961 г., еще будучи студентом, создал программу рисования, названную им Sketchpad (альбом для рисования). Программа использовала световое перо для рисования простейших фигур на экране. Полученные картинки можно было сохранять и восстанавливать. В этой программе был расширен круг основных графических примитивов, в частности, помимо линий и точек был введен прямоугольник, который задавался своими размерами и расположением.
Первоначально компьютерная графика была векторной, т.е. изображение формировалось из тонких линий. Эта особенность была связана с технической реализацией компьютерных дисплеев. В дальнейшем более широкое применение получила растровая графика, основанная на представлении изображения на экране в виде матрицы однородных элементов (пикселей).
В том же 1961 г. студент Стив Рассел создал первую компьютерную видеоигру Spacewar («Звездная война»), а научный сотрудник BellLabs Эдвард Зэджек создал анимацию » Simulationof a two-girogravitycontrolsystem «.
В МГУ группой под руководством Н.Н. Константинова была создана компьютерная математическая модель движения кошки. Машина БЭСМ-4, выполняя написанную программу решения дифференциальных уравнений, рисовала мультфильм «Кошечка», который для своего времени являлся прорывом. Для визуализации использовался алфавитно-цифровой принтер.
В связи с успехами в области компьютерной графики крупные корпорации начали проявлять к ней интерес, что в свою очередь стимулировало прогресс в области ее технической поддержки.
В том же 1971 г. Гольдштейн и Нагель впервые реализовали метод трассировки лучей с использованием логических операций для формирования трехмерных изображений.
1971-1985 гг. Появились персональные компьютеры, т.е. появился доступ пользователя к дисплеям. Роль графики резко возросла, но наблюдалось очень низкое быстродействие компьютера. Программы писались на ассемблере. Появилось цветное изображение.
Особенности: этот период характеризовался зарождением реальной графики.
Конец 80-х Программное обеспечение имелось для всех сфер применения: от комплексов управления до настольных издательств. Возникло новое направление рынка на развитие аппаратных и программных систем сканирования, автоматической оцифровки.
Появление технологии Мультимедиа. К графике добавились обработка звука и видеоизображения, общение пользователя с компьютером расширилось.
Особенности: появление диалога пользователя с персональным компьютером; появление
анимации и возможности выводить цветное изображение.
Появились датчики перемещения, благодаря которым компьютер меняет изображения при помощи сигналов посылаемых на него.
Появление стереоочков (монитор на каждый глаз), благодаря высокому быстродействию которых, производится имитация реального мира.
Замедление развития этой технологии из-за опасения медиков, т.к. благодаря Virtual Reality можно очень сильно нарушить психику человека, благодаря мощному воздействию цвета на неё.
Технические средства поддержки компьютерной графики
Развитие компьютерной графики во многом обусловлено развитием технических средств ее поддержки. Прежде всего это устройства вывода, каковыми являются дисплеи. В настоящее время существует несколько типов дисплеев, использующих электронно-лучевую трубку, а также дисплеи на жидкокристаллических индикаторах и другие их виды. Устройства отображения информации представлены в следующем документе.
Теперь сделаем небольшой обзор устрой ств вв ода информации, позволяющих решать различные задачи компьютерной графики, не вдаваясь в детали физических принципов их работы. Эти устройства позволяют организовать диалог «человек-компьютер», а особенности конструкции каждого устройства позволяют ему специализироваться на выполнении определенного круга задач.
Первую группу устройств, с помощью которых пользователь может указать позицию на экране, назовем устройствами указания ( pointing device ): мышь, трекбол ( trackball ), световое перо ( lightpen ), джойстик ( joystick ), спейсбол ( spaceball ).
Перчатка для ввода данных
Этапы построения реалистических изображений в компьютерной графике
При построении различных графических изображений на экране монитора компьютера используются последовательность множеств методов и алгоритмов используемых в компьютерной графике.
Алгоритмы компьютерной графики принято разделять на группы, в каждой из которых решаются близкие по смыслу задачи. Можно выделить пять таких групп:
1. генерация простых фигур – алгоритмы, связанные с разложением в растр отрезков прямых, разомкнутых и замкнутых кривых ( парабол, гипербол, окружностей, эллипсов и т.п.);
2. заполнение многоугольников (или заполнение контуров) – группа алгоритмов, осуществляющих генерацию (закраску) сплошных областей ;
4. удаление невидимых линий и поверхностей – алгоритмы определяют и удаляют из трехмерной сцены ребра, поверхности, объемы или их фрагменты, которые заслонены другими объектами и невидимы наблюдателю, находящемуся в заданной точке пространства;
5. построение реалистических изображений – группа наиболее сложных алгоритмов, реализующих закраску участвующих в сцене объектов с учетом их взаимного расположения и физических, в том числе оптических свойств, а также расположения и характеристик источников света.
Геометрические примитивы
Под геометрическими примитивами понимают тот базовый набор геометрических фигур, который лежит в основе всех графических построений, причем эти фигуры должны образовывать «базис» в том смысле, что ни один из этих объектов нельзя построить через другие. Однако вопрос о том, что включать в набор геометрических примитивов, нельзя считать окончательно решенным в компьютерной графике. Например, количество примитивов можно свести к некоему минимуму, без которого нельзя обойтись, и этот минимум сводится к аппаратно реализованным графическим объектам. В этом случае базисный набор ограничивается отрезком, многоугольником и набором литер (символов).
Другая точка зрения состоит в том, что в набор примитивов необходимо включить гладкие кривые различного рода (окружности, эллипсы, кривые Безье), некоторые классы поверхностей и даже сплошные геометрические тела. В качестве трехмерных геометрических примитивов в таком случае предлагаются пространственные кривые, параллелепипеды, пирамиды, эллипсоиды. Но если такой расширенный набор примитивов связан с аппаратной реализацией, то возникает проблема перенесения программных приложений с одного компьютера на другой, поскольку такая аппаратная поддержка существует далеко не на всех графических станциях. Кроме того, при создании трехмерных геометрических примитивов программисты сталкиваются с проблемой их математического описания, а также разработки методов манипулирования такими объектами, поскольку те типы объектов, которые не попали в список базовых, надо уметь приближать с помощью этих примитивов.
Во многих случаях для аппроксимации сложных поверхностей используются многогранники, но форма граней может быть различной. Пространственный многоугольник с числом вершин больше трех не всегда бывает плоским, а в этом случае алгоритмы изображения многогранников могут привести к некорректному результату. Поэтому программист должен сам позаботиться о том, чтобы многогранник был описан правильно. В этом случае оптимальным выходом из положения является использование треугольников, поскольку треугольник всегда является плоским. В современной графике это, пожалуй, самый распространенный подход.
Но существует и альтернативное направление, которое называется конструктивной геометрией тел. В системах, использующих этот подход, объекты строятся из объемных примитивов с использованием теоретико- множественных операций (объединение, пересечение).
Любая графическая библиотека определяет свой набор примитивов. Так, например, широко распространенная интерактивная система трехмерной графики OpenGL включает в список своих примитивов точки (вершины), отрезки, ломаные, многоугольники (среди которых особо выделяются треугольники и четырехугольники), полосы (группы треугольников или четырехугольников с общими вершинами) и шрифты. Кроме того, в нее входят и некоторые геометрические тела: сфера, цилиндр, конус и др.
В современной компьютерной графике векторно-полигональная модель является наиболее распространенной. Она применяется в системах автоматизированного проектирования, компьютерных играх, тренажерах, ГИС, САПР и т. д. Достоинства этой модели заключаются в следующем:
· Удобство масштабирования объектов.
· Небольшой объем данных для описания простых поверхностей.
· Аппаратная поддержка многих операций.
К числу недостатков полигональных моделей можно отнести то, что алгоритмы визуализации выполнения топологических операций (например, построение сечений) довольно сложны. Кроме того, аппроксимация плоскими гранями приводит к значительной погрешности, особенно при моделировании поверхностей сложной формы.
Положительными чертами воксельной модели являются:
· Возможность представлять внутренность объекта, а не только внешний слой; простая процедура отображения объемных сцен.
· Простое выполнение топологических операций; например, чтобы показать сечение пространственного тела, достаточно воксели сделать прозрачными.
К ее недостаткам относятся:
· Большое количество информации, необходимое для представления объемных данных.
· Значительные затраты памяти, ограничивающие разрешающую способность, точность моделирования.
· Проблемы при увеличении или уменьшении изображения; например, с увеличением ухудшается разрешающая способность изображения.
Поверхности свободных форм (функциональные модели)
Таким образом, квадрик есть замкнутое подмножество евклидова пространства, все точки которого удовлетворяют указанному неравенству. Уравнение
описывает границу этого множества. Множество точек, удовлетворяющих неравенству
образует внешнюю область квадрика.
· Легкая процедура расчета координат каждой точки.
· Небольшой объем информации для описания достаточно сложных форм.
· Возможность строить поверхности на основе скалярных данных без предварительной триангуляции.