ВУЗ:
Составители:
e
2
= (sin
ϕ
sin
ψ
, -cos
ϕ
sin
ψ
, cos
ψ
),
а направление проектирования имеет вид
e
3
= (sin ϕ cos ψ , -cos
ϕ
cos
ψ
, -sin
ψ
),
где
[]
ϕ
π
∈ 02,
,
ψ
ππ
∈−
⎡
⎣
⎢
⎤
⎦
⎥
22
,
.
Рассмотрим сначала построение графика функции в виде набора
линий, соответствующих постоянным значениям y, считая, что углы
ϕ
и
ψ
подобраны таким образом, что при y
1
<y
2
плоскость у = у
1
расположена
ближе к картинной плоскости, чем плоскость у = у
2
.
Заметим, что каждая линия семейства z = f (x, y
i
) лежит в своей
плоскости y = y
i
, причем все эти плоскости параллельны и, следовательно,
не могут пересекаться. Из этого следует, что при y
j
>y
i
линия z = f (x, y
j
) не
может закрывать линию z = f (x, y
i
).
3.2 Удаление невидимых линий.
3.2.1 Метод плавающего горизонта.
Алгоритм построения графика функции z = f (x, y) когда линии
рисуются в порядке удаления (возрастания у) и при рисовании очередной
линии рисуется только та ее часть, которая не закрывается ранее
нарисованными линиями такой алгоритм называется методом
плавающего
горизонта
.
Для определения частей линии z = f (x, y
k
), которые не закрывают
ранее нарисованные линии, вводятся так называемые линии горизонта, или
контурные линии.
Пусть проекцией линии z = f (x, y
k
) на картинную плоскость является
линия Y = Y
k
(X), где (X, Y) - координаты на картинной плоскости, причем Y
соответствует вертикальной координате. Контурные линии Y
k
max
(X) и
Y
k
min
(X) определяются следующими соотношениями:
Y
k
max
(X) = max
11≤≤ −ik
Y
i
(X),
Y
k
min
(X) = min
11≤≤ −ik
Y
i
(X).
На экране рисуются только те части линии Y = Y
k
(X), которые
находятся выше линии Y
k
max
(X) или ниже линии Y
k
min
(X) (рис 3.1) .
Одной из наиболее простых и эффективных реализаций данного
метода является растровая реализация, при которой в области задания
исходной функции вводится сетка
{
(x
i
, y
j
), i = 1,...,n
1
, j = 1,...,n
2
}
и каждая из линий Y = Y
k
(X) представляется в виде ломаной. Для рисования
сегментов этой ломаной используется модифицированный алгоритм
Брезенхейма, который перед выводом очередного пиксела сравнивает его
ординату с верхней и нижней контурными линиями, представляющими
собой в этом случае массивы значений ординат. Случай отрезков с угловым
коэффициентом большим 1 требует специальной обработки (для того,
чтобы не появлялись выпадающие
пикселы).
e2 = (sin ϕ sin ψ , -cos ϕ sin ψ , cos ψ ), а направление проектирования имеет вид e3 = (sin ϕ cos ψ , -cos ϕ cos ψ , -sin ψ ), ⎡ π π⎤ где ϕ ∈ [0 ,2π ] , ψ ∈ ⎢− , ⎥ . ⎣ 2 2⎦ Рассмотрим сначала построение графика функции в виде набора линий, соответствующих постоянным значениям y, считая, что углы ϕ и ψ подобраны таким образом, что при y1yi линия z = f (x, yj) не может закрывать линию z = f (x, yi). 3.2 Удаление невидимых линий. 3.2.1 Метод плавающего горизонта. Алгоритм построения графика функции z = f (x, y) когда линии рисуются в порядке удаления (возрастания у) и при рисовании очередной линии рисуется только та ее часть, которая не закрывается ранее нарисованными линиями такой алгоритм называется методом плавающего горизонта. Для определения частей линии z = f (x, yk), которые не закрывают ранее нарисованные линии, вводятся так называемые линии горизонта, или контурные линии. Пусть проекцией линии z = f (x, yk) на картинную плоскость является линия Y = Yk(X), где (X, Y) - координаты на картинной плоскости, причем Y соответствует вертикальной координате. Контурные линии Ykmax(X) и Ykmin(X) определяются следующими соотношениями: Ykmax(X) = max Yi(X), 1≤ i ≤ k −1 k Y min(X) = min Yi(X). 1≤ i ≤ k −1 На экране рисуются только те части линии Y = Yk(X), которые находятся выше линии Ykmax(X) или ниже линии Ykmin(X) (рис 3.1) . Одной из наиболее простых и эффективных реализаций данного метода является растровая реализация, при которой в области задания исходной функции вводится сетка { (xi, yj), i = 1,...,n1, j = 1,...,n2 } и каждая из линий Y = Yk(X) представляется в виде ломаной. Для рисования сегментов этой ломаной используется модифицированный алгоритм Брезенхейма, который перед выводом очередного пиксела сравнивает его ординату с верхней и нижней контурными линиями, представляющими собой в этом случае массивы значений ординат. Случай отрезков с угловым коэффициентом большим 1 требует специальной обработки (для того, чтобы не появлялись выпадающие пикселы).
Страницы
- « первая
- ‹ предыдущая
- …
- 31
- 32
- 33
- 34
- 35
- …
- следующая ›
- последняя »