Post

Visualizzazione dei post con l'etichetta algoritmi

Hello world - Rimozione delle superfici nascoste - Appunti

Rasterization -  HSR descrivere il problema ed elencare le strategie e quindi gli algoritmi La computazione avviene in aritmetica intera, e le operazioni sono “per pixel” (pixel bound). Non tutti i poligoni sopravvissuti, però, devono essere disegnati. Alcuni possono non essere visibili dall’osservatore perché nascosti (totalmente o parzialmente) da altri poligoni. • Problema: dati un insieme di poligoni in 3D ed un punto di vista, si vogliono disegnare solo i poligoni visibili (o porzioni di essi). Ogni poligono si assume essere piatto ed opaco. • Vi sono essenzialmente due approcci: – object-precision: l’algoritmo lavora sui poligoni stabilendo relazioni di occlusione reciproca. Il costo `e quadratico nel numero dei poligoni. Però la precisione `e elevata (precisione macchina). – image-precision: l’algoritmo stabilisce occlusioni a livello del pixel. `E più veloce ma la precisione `e limitata. • La rimozione delle superfici nascoste (Hidden Surface Removal, HSR) vien...

Hello world - Formule Utili

//Distanza tra due punti -------------------------------------------------------------- double Distance(Vect2d p1, Vect2d p2) {   double dx = p2.x - p1.x;   double dy = p2.y - p1.y;   return sqrt((double)dx*dx + dy*dy); }; //Distanza tra un punto e un segmento -------------------------------------------------------------- double DistanceToLine(Vect2d lineP1, Vect2d lineP2, Vect2d point) {   double normalLength = _hypot(lineP2.x - lineP1.x, lineP2.y - lineP1.y);    double distance = (double)((point.x - lineP1.x) * (lineP2.y - lineP1.y) - (point.y - lineP1.y) * (lineP2.x - lineP1.x)) / normalLength;   return abs(distance); }