Sunteți pe pagina 1din 7

Algoritmul PAINTER

Construirea unei scene prin trasarea in ordine


descrescatoare a planelor dupa distanta lor fata
de observator
Pasii algoritmului:
Eliminarea suprafetelor ascunse aplicand metoda
testului de vizibilitate
Stabilirea prioritatilor planelor (suprafetelor) utilizand
un algoritm de sortare topologica
Trasarea suprafetelor conform prioritatilor

Stabilirea prioritatilor Testul 1
Stabilirea prioritatilor dupa cota Z

P
MaxZ(P)
MinZ(P)
Q
MaxZ(Q)
MinZ(Q)
Stabilirea prioritatilor Testul 2
Detectia suprapunerilor

MaxX(P)
MinX(P)
MaxY(P)
MinY(P)
P

P Q
Q
P
Fr suprapuneri

Q
P
Suprapuneri
Stabilirea prioritatilor Testul 3
Pozitia observatorului in raport cu suprafetele
0 = + + +
P P P P
D z C y B x A
0
1
1
1
1
1
1
1
1
1
1
1
1
1
3 3 3
2 2 2
1 1 1
3 3
2 2
1 1
3 3
2 2
1 1
3 3
2 2
1 1
3 3 3
2 2 2
1 1 1
= + =
z y x
z y x
z y x
y x
y x
y x
z
z x
z x
z x
y
z y
z y
z y
x
z y x
z y x
z y x
z y x
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )
( ) ( ) ( )

+ =
+ =
+ =
+ =
1 2 2 1 3 1 3 3 1 2 2 3 3 2 1
2 1 3 3 1 2 3 2 1
2 1 3 3 1 2 3 2 1
2 1 3 3 1 2 3 2 1



z y z y x z y z y x z y z y x D
y y x y y x y y x C
z z x z z x z z x B
z z y z z y z z y A
P
P
P
P
Stabilirea prioritatilor Testul 4
Detectia suprapunerilor reciproce

Q
P
Stabilirea prioritatilor Testul 4: Scindarea

Q
P1
D
(x,y,z)
(x
1
,y
1
,z
1
)
(x
2
,y
2
,z
2
)
P2

(x,y,z)
Q1
P
D
(x
1
,y
1
,z
1
)
(x
2
,y
2
,z
2
)
Q2
Stabilirea prioritatilor Testul 4: Scindarea
v
z z
z z
y y
y y
x x
x x
D
x x
=

1 2
1
1 2
1
1 2
1
2 2 2 1 1 1
:
: ) z , y , ( ), z , y , ( punctele
prin trece ce drepte unei a carteziana Ecuatia
( )

+ =
+ =
+ =

1 2 1
1 2 1
1 2 1
) (
) (
z z v z z
y y v y y
x x v x x
0 = + + +
Q Q Q Q
D z C y B x A
( ) ( ) ( )
1 2 1 2 1 2
1 1 1
z z C y y B x x A
D z C y B x A
v
Q Q Q
Q Q Q Q
+ +

=

S-ar putea să vă placă și