Оглавление Дополнительное чтение Учебник «Компьютерная графика» Дополнительное чтение (оглавление) Аффинное проецирование. Стереографическая и специальные перспективные проекции

Представление геометрических образов в ЭВМ

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

Как задается точка знают все, а как задаются другие фигуры? Окружность задается тремя числами: x- и y-координатами центра и радиусом; для эллипса в дополнение к координатам центра нужно добавить величины двух его полуосей и еще направление одной из осей. Одну и ту же фигуру можно задать разными способами, но обычно выделяют те, для которых количество параметров является минимальным. Это минимальное количество называют «параметрическим числом образа». Составляя программы и алгоритмы машинной графики, надо знать параметрические числа основных геометрических образов.

Таблица параметрических чисел для некоторых геометрических образов
Объект Размерность пространства Параметрическое число
Отрезок на плоскости 2 4
Отрезок в пространстве 3 6
Окружность в пространстве 3 6
Сфера 3 4
Дуга окружности на плоскости 2 5
Прямоугольник общего положения 2 5
Эллипс общего положения 2 5
Эллипсоид 3 9
Поверхность второго порядка 3 9
Линия полинома степени n 2 n+1

В задании объекта могут также участвовать «логические параметры». При этом можно ограничиться числами 0 и 1 или же устанавливать параметр по знаку числа. Эти параметры не влияют на параметрические числа объектов. Например, точка на окружности может быть задана значением одной из ее координат (X или Y), но надо будет указать, на какой полуокружности она может находиться.

В машинной графике существенно, с какого конца вычерчивается геометрический компонент, в этом случае должно задаваться направление вычерчивания. Это нужно для определения видимости сторон. Направление обхода тела можно задавать знаком «+» или «-», можно воспользоваться касательными, но чаще всего используются касательные векторы, или «векторы направления». Вектор на плоскости можно задать двумя его проекциями, касательные векторы имеют произвольную длину — поэтому можно ограничиться одним числом, однако из соображения удобства пользуются проекциями. На рис. 1.1a показана дуга, построенная по двум конечным точкам и проведенным их них касательным векторам. Этот набор (конечные точки и касательные векторы) — одна из типичных конфигураций данных. Если направление одного из векторов изменить на противоположное, то мы увидим картину, показанную на рис. 1.1b.

рис. 1.1

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

Способы представления объектов

Коснемся двух различных способов представления геометрических объектов в ЭВМ.

Первый способ — это аналитические модели. Аналитическая модель есть набор чисел и, если необходимо, логических параметров, которые играют роль коэффициентов и других величин в уравнениях, аналитических соотношениях, задающих объект данного типа. Например, для окружности основная форма аналитической модели — координаты центра и радиус, связанные известным соотношением: (x - xc)2 + (y - yc)2 - R2 = 0.

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

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

Координатные модели имеют несколько разновидностей:

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

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

Оглавление Аффинное проецирование. Стерео...