Algoritmo di Warnock: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Davi.trip (discussione | contributi)
m Correzione della formattazione
Botcrux (discussione | contributi)
m Bot: Aggiungo template {{interprogetto}} (FAQ)
 
(3 versioni intermedie di 3 utenti non mostrate)
Riga 1:
<!--Template S aggiunto via Bot-->{{S|programmazione}}
[[File:Warnock1.svg|miniatura|200x200px|Visibilità di poligoni in una data viewport: a) il poligono riempie la viewport, b) parzialmente, c) completamente visibili, d) poligono invisibile.]]
[[File:Warnock_algorithm.svg|miniatura|200x200px|Quattro step per una divisione di una viewport per una semplice scena]]
L''''algoritmo di Warnock''' è un [[algoritmo]] per la [[determinazione della superficie nascosta]] inventato da [[John Warnock]] che è tipicamente utilizzato nel campo della [[computer grafica]].<ref>{{Cita web|url=httphttps://dl.acm.org/citation.cfm?id=905316&dl=ACM|titolo=Warnock, John (1969). "A hidden surface algorithm for computer generated halftone pictures". University of Utah. The algorithm was Warnock's doctoral thesis., 32 pages}}</ref>  Esso risolve il problema di [[Rendering|renderizzare]] immagini complicate, attraverso una suddivisione [[Algoritmo ricorsivo|ricorsiva]] di una scena, che arriva a ottenere aree che sono banali da calcolare. In altre parole, se la scena è abbastanza semplice da calcolare in modo efficiente, viene resa; altrimenti viene divisa in parti più piccole.<ref>{{Cita libro |autore=John Daintith|titoloautore2=Daintith, John;Edmund Wright, Edmund (|anno=2009). |titolo=Oxford Dictionary of Computing.|editore= Oxford University Press.|anno=|editore=|città=|p=|pp=|ISBN=}}</ref>
 
Questo è un  [[Divide et impera (informatica)|algoritmo divide et impera]]  con  run-time  di  <math>O(np)</math>, dove  <math>n</math> è il numero di poligoni e  <math>p</math>  è il numero di pixel nella viewport.
 
Gli input sono un elenco di poligoni e una viewport (finestra di visualizzazione). Il caso migliore è che se l'elenco dei poligoni è semplice, allora i poligoni vengono disegnati nella viewport. Per "semplice" si intende se c'è un poligono (quindi il poligono o le sue parti sono disegnate in una parte appropriata della viewport) o se una viewport che vale un pixel in dimensioni (quindi quel pixel ottiene un colore del poligono più vicino all'osservatore). Lo step successivo è quello di dividere la viewport in quattro quadranti dalle dimensioni uguali e chiamare ricorsivamente l'algoritmo per ogni quadrante, con un elenco di poligoni modificato, in modo da contenere solo poligoni visibili in quel quadrante.
Riga 16 ⟶ 17:
* [[Determinazione della superficie nascosta]]
* [[Algoritmo ricorsivo]]
 
==Altri progetti==
{{interprogetto}}
 
==Collegamenti esterni==
* [http://medialab.di.unipi.it/web/IUM/Waterloo/node68.html A summary of the Warnock Algorithm]
 
[[Categoria:Stub - programmazione]]
[[Categoria:Computer grafica]]