Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Шпоры по компьютерной графике [по билетам].doc
Скачиваний:
68
Добавлен:
02.05.2014
Размер:
805.89 Кб
Скачать

21. Растровое представление окружности: постановка задачи, простой алгоритм, алгоритм Брезенхейма.

Из геометрии мы знаем, что окружность с центром в точке (xc,yc) и радиусом r, задается параметрически с помощью системы уравнений:

Отсюда не сложно получить алгоритм генерации окружности:

  1. Полагаем А=0.

  2. Если А больше либо равно 2, то окружность отрисована.

  3. Вычислим x=Trunc(xc+r*cos(A)), y=Trunc(yc+r*sin(A))

  4. Screen[x,y]=Color

  5. Увеличим A на d и перейдем к шагу 2.

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

Если точка (x,y) лежит на окружности с центром в точке (0,0), то и точка (x,-y), так же лежит на этой окружности. Последнее утверждение можно развить, а именно: если точка (x,y) лежит на окружности с центром в точке (0,0), то и точки (x,-y);(-x,-y);(-x,y);(y,x),(y,-x);(-y,-x);(-y,x), так же лежат на этой окружности. Координата x увеличивается на единицу на каждом шаге. Так же координата y либо уменьшается на единицу, либо остается без изменений. Нужно выбрать, куда переходить из точки (xi,yi) либо в точку (xi+1,yi), либо в точку (xi+1,yi-1). Для того, чтобы осуществить выбор рассмотрим две невязки:

di1=(xi+1)2+yi2-r2

di2=(xi+1)2+(yi-1)2-r2

А так же будем следить за их суммой:

di=di1+di2

Рассмотрим несколько вариантов расположения "вещественной" окружности относительно "целых" точек:

Случай 1. di1 < 0, di2 < 0, и следовательно di < 0. Случай 2. di1= 0, di2 < 0, и следовательно di < 0. Случай 3. di1 > 0, di2 < 0, и следовательно имеем два варианта для di: Случай 3.1. |di1| < |di2| и следовательно di < 0. Случай 3.2. |di1| > |di2| и следовательно di > 0. Случай 4. di1 > 0, di2=0, и следовательно di > 0: Случай 5. di1 > 0, di2 > 0, и следовательно di > 0:

В случае, если di < 0 надо активировать точку (xi+1,yi), а в случае, если di > 0 надо активировать точку (xi+1,yi-1). di=di1+di2=(xi+1)2+yi2-r2+(xi+1)2+(yi-1)2-r2=2xi2+2yi2+4xi-2yi+3-2r2

Теперь получим выражение di+1 через di .

di+1=2xi+12+2yi+12+4xi+1-2yi+1+3-2r2=di+4(xi-yi)+10

Осталось получить значение d1 в начальной точке (x1=0,y1=r):

d1=3-2r

Если x > y, то выходим.

1. Screen[x+xc,y+yc]:=Color;

2. Screen[x+xc,-y+yc]:=Color;

3. Screen[-x+xc,y+yc]:=Color;

4. Screen[-x+xc,-y+yc]:=Color;

5. Screen[y+xc,x+yc]:=Color;

6. Screen[y+xc,-x+yc]:=Color;

7. Screen[-y+xc,x+yc]:=Color;

8. Screen[-y+xc,-x+yc]:=Color;

Если d < 0, то d:=d+4*x+6, переходим на Шаг 13

d:=d+4(x-y)+10; y:=y-1;

Билет 11

10. Геометрическое моделирование и решаемые им задачи…

Модель – это представление некоторых, необязательно всех, свойств объекта, либо конкретно существующего, либо абстрактного, его особенностей.

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

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

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

3. Психологическое – предполагает лишь некоторую схожесть между объектом и изображением: чертежи, проволочные модели и т.п

геометрические модели – это модели состоящие из след компонентов:

- пространственное расположение и форма – геометрия объекта; некоторые атрибуты: цвет, текстура;

- топология (связность с другим объектом).

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

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

Координатные модели – это наборы точек, принадлежащих объектам, которые задаются координатами.

У координатных моделей могут быть разновидности:

- координатно-разностные модели, где вместо координат их разности;

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

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

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

Декартова система координат – основа численного моделирования объектов.

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

В задании объекта могут также участвовать логические параметры. Эти параметры не влияют на параметрические числа объектов и можно ограничиться числами 0 и 1 или же установить параметр по знаку числа. Так же очень важно задавать направление вычерчивания, которое необходимо для определения видимости сторон. Для этого используют касательные векторы, или векторы направления.