Painter

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

description

painter

Transcript of Painter

  • Algoritmul PAINTERConstruirea unei scene prin trasarea in ordine descrescatoare a planelor dupa distanta lor fata de observatorPasii algoritmului:Eliminarea suprafetelor ascunse aplicand metoda testului de vizibilitateStabilirea prioritatilor planelor (suprafetelor) utilizand un algoritm de sortare topologicaTrasarea suprafetelor conform prioritatilor

  • Stabilirea prioritatilor Testul 1Stabilirea prioritatilor dupa cota Z

    P

    Q

    MaxZ(P)

    MinZ(P)

    MaxZ(Q)

    MinZ(Q)

  • Stabilirea prioritatilor Testul 2Detectia suprapunerilor

    MaxX(P)

    MinX(P)

    MaxY(P)

    MinY(P)

    P

    P

    Q

    Q

    P

    Fr suprapuneri

    Suprapuneri

    P

    Q

  • Stabilirea prioritatilor Testul 3Pozitia observatorului in raport cu suprafetele

    Suprafata P desparte spatiul in doua semispatii. Daca observatorul se afla in acelasi semispatiu cu toate punctele suprafetei Q atunci suprafata Q detine primplanul (se deseneaza dupa P).Suprafata Q desparte spatiul in doua semispatii. Daca observatorul se afla in acelasi semispatiu cu toate punctele suprafetei P atunci suprafata P detine primplanul (se deseneaza dupa Q).

    Calculele se fac dupa ecuatiile planului mai jos prezentate. Pentru a determina ecuatia planului sunt suficiente 3 puncte din suprafata.

  • Stabilirea prioritatilor Testul 4Detectia suprapunerilor reciproce. Daca in cazul unei suprapuneri nu se poate stabili suprafata care detine primplanul prin testul 3, atunci vorbim de suprapunere reciproca. Solutie: una din suprafete este scindata.

    Q

    P

  • Stabilirea prioritatilor Testul 4: Scindarea

    Q

    P1

    D

    (x,y,z)

    (x1,y1,z1)

    (x2,y2,z2)

    P2

    Q1

    P

    D

    (x,y,z)

    (x1,y1,z1)

    (x2,y2,z2)

    Q2

  • Stabilirea prioritatilor Testul 4: Scindarea