Grupo de Informática Gráfica Avanzada Universidad de...
Transcript of Grupo de Informática Gráfica Avanzada Universidad de...
![Page 1: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/1.jpg)
Grupo de Informática Gráfica AvanzadaUniversidad de Zaragoza
Polígonos
Diego Gutiérrez
![Page 2: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/2.jpg)
Diego Gutiérrez
Indice
DefiniciónRepresentaciónTriangulación (Gouraud, Phong)Modelado poligonal
![Page 3: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/3.jpg)
Diego Gutiérrez
Con lo que habíamos visto hastaahora...
![Page 4: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/4.jpg)
Diego Gutiérrez
![Page 5: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/5.jpg)
Diego Gutiérrez
Definición
La mayoría de renderizadores trabajan sobre polígonosLa mayoría de los objetos se representan como polígonosLa mayoría de los algoritmos están pensados para polígonosLos aceleradores gráficos trabajan sobre polígonos
![Page 6: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/6.jpg)
Diego Gutiérrez
Definición
¿Qué es un polígono? Un polígono es una región 2D de un plano limitada por segmentos de línea llamados ladosLados adyacentes no pueden ser colinealesUn vértice es el punto de los límites del polígono donde dos ladosintersectanDos lados pueden intersectar sólo en un vérticeUn polígono simple es uno sin agujeros
![Page 7: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/7.jpg)
Diego Gutiérrez
Definición
Teorema de Jordan: un polígono divide el plano en una zona interior, una exterior y un límite
El polígono abarca la interior y el límite
![Page 8: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/8.jpg)
Diego Gutiérrez
Definición
Otra propiedad interesante: convexidad
Convex hull: mínima área convexa que contiene todos los puntos de un conjunto
![Page 9: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/9.jpg)
Diego Gutiérrez
Representación
![Page 10: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/10.jpg)
Diego Gutiérrez
Representación
¿Cómo los representamos?
Esquema 1:Para cada polígono, construir el conjunto de vértices en orden arbitrarioRepresentar cada vértice con un par de números reales (coordenadasdefinidas respecto a un sistema de referencia común)Construir una lista con esas parejas de reales
Sintácticamente correcto. Semánticamente?
![Page 11: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/11.jpg)
Diego Gutiérrez
Representación
Sintácticamente correcto. Semánticamente?
El esquema anterior es ambiguo o incompleto
![Page 12: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/12.jpg)
Diego Gutiérrez
Representación
Esquema 2: restringir el esquema anterior a polígonos convexosEl convex hull de un polígono es único: esquema no ambiguo
Problema: hay puntos que no se definen como vértices, por lo que quedan fuera de nuestra representación
El esquema 2 es inválido
![Page 13: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/13.jpg)
Diego Gutiérrez
Representación
Esquema 3: redefinimos las reglasVértices listados en orden consecutivo, siguiendo los lados del polígono
![Page 14: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/14.jpg)
Diego Gutiérrez
Representación
Más esquemas?
![Page 15: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/15.jpg)
Diego Gutiérrez
Representación
Más esquemas?
Sólo para polígonos convexos
![Page 16: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/16.jpg)
Diego Gutiérrez
Representación
En resumen. Necesitamos:Un dominio. Qué objetos son representables?Validez. Puedo al menos representar un objeto?No ambigüedad. La representación corresponde a un único objeto?
Es también conveniente:Unicidad. Puede un objeto ser representado de varias formas?Concisión. Es le representación muy farragosa?Adaptabilidad a las aplicaciones. Para qué hago la representación?
![Page 17: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/17.jpg)
Diego Gutiérrez
Representación
A veces el problema se simplifica mediante primitivas
![Page 18: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/18.jpg)
Diego Gutiérrez
Representación
Baja resolución vs. Alta resolución
![Page 19: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/19.jpg)
Diego Gutiérrez
Representación
Baja resolución vs. Alta resolución
![Page 20: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/20.jpg)
Diego Gutiérrez
Triangularización
![Page 21: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/21.jpg)
Diego Gutiérrez
Triangulación
¿Qué polígono sería más interesante?
![Page 22: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/22.jpg)
Diego Gutiérrez
Triangulación
El triángulo es el más sencillo: menor representación, todos susvértices se conectan, siempre convexoAlgoritmos de sombreado basados en scanline, para determinar la intensidad de un punto P interior
![Page 23: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/23.jpg)
Diego Gutiérrez
Sombreado de polígonos
¿Puede verse un modelo con apariencia suave si lo hacemos a partir de polígonos?
![Page 24: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/24.jpg)
Diego Gutiérrez
Sombreado de polígonos
Los modelos de iluminación en IG calculan la intensidad de la luzen un punto aislado de la superficie¿Cómo lo calculamos para todo el polígono?
Diferentes enfoques:Repetimos el cálculo para todos los puntos del polígono (innecesario, poco práctico, nada inteligente)Flat shading: calculamos en un punto del polígono (generalmente el centroide) y con el valor obtenido pintamos todo el polígonoGouraud y Phong: calculamos en puntos clave del polígono (vértices) e interpolamos
![Page 25: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/25.jpg)
Diego Gutiérrez
Flat shading (sombreado constante)
En inglés, a.k.a constant shadingEl método más rápido y sencillo
El método menos realistaNo pain, no gain
![Page 26: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/26.jpg)
Diego Gutiérrez
Flat shading (sombreado constante)
En realidad, para fuentes puntuales, la dirección de la fuente de luz no es constantesobre todo el polígonoPara reflejos especulares, la dirección del ojotampocoEsto hace que la estructura poligonal interna se haga evidentePodemos refinar más la malla para disimularla un poco
![Page 27: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/27.jpg)
Diego Gutiérrez
Mach banding
Además, aparece el problema del Mach bandingEl sistema visual es muy bueno detectando aristas... aunque éstas no existan!Discontinuidades C1Esto hace que las diferencias de sombreado entre polígonos parezcantodavía mayoresY aunque usáramos el horriblemente ineficiente método de calcular en cada punto del polígono, el resultado sería pobre
![Page 28: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/28.jpg)
Diego Gutiérrez
Mach banding
![Page 29: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/29.jpg)
Diego Gutiérrez
Sombreado de Gouraud
Gouraud shading se basa en interpolar las intensidades obtenidasen cada vérticePrimero calculamos esa intensidad en A,B,C
Necesitamos calcular la normal en cada vérticeLa aproximamos promediando la normal a la superficie en los polígonos que comparten ese vértice
![Page 30: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/30.jpg)
Diego Gutiérrez
Sombreado de Gouraud
Equivale a hallar la normal a la superficie real que aproximan los polígonos, asumiendo que éstos son una aproximación piecewise de la superficie real (C0)Las normales proporcionan información sobre el plano tangente a la superficie en cada punto (C1)Las normales en los vértices se usan sólo para iluminación (no backfaceculling u otros cálculos geométricos)
![Page 31: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/31.jpg)
Diego Gutiérrez
Sombreado de Gouraud
Luego calculamos la intensidad en Q y R (intersección del scan-line con el polígono)Y luego interpolamos entre IQ e IR para obtener Ip
![Page 32: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/32.jpg)
Diego Gutiérrez
Sombreado de Gouraud
Las discontinuidades entre polígonos adyacentes desaparecen (la intensidad “al final de un polígono” a la que llegamos interpolandoserá la intensidad “al comienzo del polígono siguiente”
![Page 33: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/33.jpg)
Diego Gutiérrez
Sombreado de Gouraud
Problemas de Gouraud:Las aristas tienden a desaparecerLos reflejos especulares pueden perderse si caen dentro de un solo polígonoComo hemos visto, las bandas de Mach no se eliminan del todo
Para “recuperar” una arista que queremos que sea visible, calculamos dos normales al vértice, una para cada lado. Cada normal se halla promediando las normales a la superficie de los polígonos del lado correspondiente
![Page 34: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/34.jpg)
Diego Gutiérrez
Sombreado de Phong
No confundir con el modelo de iluminación de PhongInterpolamos linealmente las normales de la superficie a lo largo del polígono (no las intensidades como Gouraud)Aparte de eso, el concepto es similar:
![Page 35: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/35.jpg)
Diego Gutiérrez
Sombreado de Phong
Una vez interpoladas las normales, se aplica el modelo de iluminación con la normal interpolada, para hallar la intesidad de luz en el punto requerido
Apariencia más real. Los reflejos especulares se capturan mejor. Las bandas de Mach se reducenRequiere más cálculos (un cálculo de iluminación completo por cada interpolación)
![Page 36: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/36.jpg)
Diego Gutiérrez
Triangulación
La clave, entonces, parece ser reducir los polígonos a triángulos
![Page 37: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/37.jpg)
Diego Gutiérrez
Triangulación
![Page 38: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/38.jpg)
Diego Gutiérrez
Triangulación
Wikipedia: In computational geometry, polygon triangulation isthe decomposition of a polygon into a set of triangles.A triangulation of a polygon P is its partition into non-overlappingtriangles whose union is P. In the strictest sense, these trianglesmay have vertices only at the vertices of P. In a less strict sense, points can be added anywhere on or inside the polygon to serveas vertices of triangles.
Reduce formas complejas a formas simples. Es el primer paso en muchos algoritmos más complejos
Robótica, situación 3D de puntos, generación de mallas...
![Page 39: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/39.jpg)
Diego Gutiérrez
Triangulación
Todo polígono es triangularizableLa triangularización de un polígono de n-lados da como resultadon-2 triángulosEjemplo: 13 lados, 11 triángulos
![Page 40: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/40.jpg)
Diego Gutiérrez
Triangulación
El problema de la galería de arte:
?
![Page 41: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/41.jpg)
Diego Gutiérrez
Triangulación
El problema de la galería de arte:Cada guardia está fijo en un sitioTiene visión de 360ºNo ve a través de las paredes
Problema planteado en 1973, y resuelto ese mismo año mediantecomplejas formulacionesDesde entonces, se han propuestosoluciones mucho más sencillasbasadas en triangulación
![Page 42: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/42.jpg)
Diego Gutiérrez
Triangulación
Teorema final: un polígono de n-lados puede ser “vigilado” con n/3 guardias en los vértices
![Page 43: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/43.jpg)
Diego Gutiérrez
Triangulación
Primeros algoritmos: O(n4)En seguida reducidos a O(n2)Primer algoritmo no-trivial O(nlog n): 19781991: Chazelle publica un algoritmo O(n) extremadamentecomplejoActualmente se suele trabajar con O(nlog n)
![Page 44: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/44.jpg)
Diego Gutiérrez
Triangulación
Algoritmo:Barrer el plano con una scanlineEn cada vértice, trazar una línea vertical (horizontal) hasta chocarcon un lado del polígono
El resultado es una serie de trapezoides, que son trivialmentedescompuestos en triángulosO(nlog n)
![Page 45: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/45.jpg)
Diego Gutiérrez
Modelado poligonal
Ahora que ya tenemos un montón de polígonos (triángulos), cómo trabajamos con ellos?
![Page 46: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/46.jpg)
Diego Gutiérrez
Modelado poligonal
Ahora que ya tenemos un montón de polígonos (triángulos), cómo trabajamos con ellos?
![Page 47: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/47.jpg)
Diego Gutiérrez
Modelado poligonal
![Page 48: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/48.jpg)
Diego Gutiérrez
Modelado poligonal
![Page 49: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/49.jpg)
Diego Gutiérrez
Modelado poligonal
![Page 50: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/50.jpg)
Diego Gutiérrez
Modelado poligonal
![Page 51: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/51.jpg)
Diego Gutiérrez
Modelado poligonal
![Page 52: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/52.jpg)
Diego Gutiérrez
Modelado poligonal
![Page 53: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/53.jpg)
Diego Gutiérrez
Modelado poligonal
![Page 54: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/54.jpg)
Diego Gutiérrez
Modelado poligonal
![Page 55: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/55.jpg)
Diego Gutiérrez
Modelado poligonal
![Page 56: Grupo de Informática Gráfica Avanzada Universidad de Zaragozagiga.cps.unizar.es/~diegog/ficheros/teaching/polygons.pdf · centroide) y con el valor obtenido pintamos todo el polígono](https://reader036.fdocument.pub/reader036/viewer/2022062916/5ebf618f417c8148c80efb1e/html5/thumbnails/56.jpg)
Diego Gutiérrez
Modelado poligonal
Cubic tragedy: http://www.youtube.com/watch?v=-fBcjHq9rv0SIGGRAPH 2005, Electronic Theater