ВУЗ:
Составители:
116
Данный алгоритм является целочисленным. В соответст-
вии с ним полагается, что генерируется окружность с целочис-
ленным радиусом R и центром в точке (x = 0, y = 0) (что всегда
можно сделать, связав координаты x и y с координатной сеткой
растра простым преобразованием координат). Изначально по-
шагово (переходя от пикселя к
пикселю) строится четверть
окружности в первом квадран-
те. Причем ее построение на-
чинается в точке (x = 0, y = R)
и осуществляется в направле-
нии по часовой стрелке. При
таких условиях и нахождении
в некоторой текущей точке
растра с координатами адре-
суемой точки (x
i
, y
i
) есть толь-
ко три варианта выбора оче-
редного пикселя (рис.1): по
горизонтали вправо (направ-
ление H
), по диагонали вниз и вправо (направление D) и по
вертикали вниз (направление V
).
В качестве критериев перехода используются следующие вели-
чины:
()
(
)
22
i
2
ii
R1y1x −−++=
Δ
;
(
)
1y2
ii
−
+=
Δ
δ
;
(
)
1x2
ii
−
−
=
′
Δ
δ
.
Согласно алгоритму Брезенхема:
если
Δ
i
< 0:
при
δ
≤
0
выбираем направление H
, т.е. пиксель (x
i
+ 1, y
i
);
при
δ
>
0
выбираем направление D
, т.е. пиксель (x
i
+ 1, y
i
–1);
если
Δ
i
> 0:
при
δ′
≤
0
выбираем направление D
, т.е. пиксель (x
i
+ 1, y
i
– 1);
Рис.1. К выбору очередного
пикселя
()
ii
y,x
()
ii
y,1x +
()
1y,1x
ii
−
+
()
1y,x
ii
−
H
D
V
116
Данный алгоритм является целочисленным. В соответст-
вии с ним полагается, что генерируется окружность с целочис-
ленным радиусом R и центром в точке (x = 0, y = 0) (что всегда
можно сделать, связав координаты x и y с координатной сеткой
растра простым преобразованием координат). Изначально по-
шагово (переходя от пикселя к
пикселю) строится четверть
окружности в первом квадран-
( xi , yi ) H те. Причем ее построение на-
( xi + 1 , yi ) ичинается в точке (x = 0, y = R)
осуществляется в направле-
нии по часовой стрелке. При
V D таких условиях и нахождении
в некоторой текущей точке
( xi , yi − 1) ( xi + 1 , yi − 1) растра с координатами адре-
суемой точки (xi , yi ) есть толь-
Рис.1. К выбору очередного ко три варианта выбора оче-
пикселя редного пикселя (рис.1): по
горизонтали вправо (направ-
ление H ), по диагонали вниз и вправо (направление D) и по
вертикали вниз (направление V ).
В качестве критериев перехода используются следующие вели-
чины:
Δ i = ( xi + 1) 2 + ( yi − 1) 2 − R 2 ;
δ = 2 (Δ i + yi ) − 1 ; δ ′ = 2 (Δ i − x i ) − 1 .
Согласно алгоритму Брезенхема:
если Δ i < 0:
при δ ≤ 0 выбираем направление H , т.е. пиксель (xi + 1, yi );
при δ > 0 выбираем направление D , т.е. пиксель (xi + 1, yi –1);
если Δ i > 0:
при δ′ ≤ 0 выбираем направление D , т.е. пиксель (xi + 1, yi – 1);
Страницы
- « первая
- ‹ предыдущая
- …
- 114
- 115
- 116
- 117
- 118
- …
- следующая ›
- последняя »
