La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Infografía 1 ModelizaciónModelización. 2002 J.C.Dürsteler - UPF- IUA Introducción La modelización trata deLa modelización trata de –los formalismos matemáticos.

Presentaciones similares


Presentación del tema: "Infografía 1 ModelizaciónModelización. 2002 J.C.Dürsteler - UPF- IUA Introducción La modelización trata deLa modelización trata de –los formalismos matemáticos."— Transcripción de la presentación:

1 Infografía 1 ModelizaciónModelización

2 2002 J.C.Dürsteler - UPF- IUA Introducción La modelización trata deLa modelización trata de –los formalismos matemáticos y –las estructuras de datos que constituyen los modelos que sirven para representar objetos en infografía. que constituyen los modelos que sirven para representar objetos en infografía. Crear un modelo:Crear un modelo: –buscar una representación matemática o algorítmica que funcione como el original de forma real ode forma real o de forma aparentede forma aparente Los objetos –son de una complejidad notable –requieren modelos matemáticos y estructuras de datos específicos para la computación gráfica. Existen diversas posibilidades de representar un mismo objeto. Cuál usemos dependerá de –los objetivos del proyecto –de otros factores relacionados con el rendimiento la calidad del resultado.

3 2002 J.C.Dürsteler - UPF- IUA Introducción Algunos de estos aspectos son:Algunos de estos aspectos son: –Precisión –Necesidad de almacenamiento –Aplicabilidad de los algoritmos de trazado –Realismo del resultado. En muchos casos no es posible cumplimentar todos los requisitos que un modelo ha de cumplir para representar eficientemente un objeto. Ello obliga a veces de establecer un compromiso en cuanto al modelo que se va a utilizar.

4 2002 J.C.Dürsteler - UPF- IUA Modelos Ambiguos Vistas 2DVistas 2D –Representación en PlantaPlanta AlzadoAlzado PerfilPerfil Complicado el cambio de representación.Complicado el cambio de representación. –Especialmente a 3D –Requiere la participación del usuario. Se crean interactivamenteSe crean interactivamente Puede producir sólidos no válidos.Puede producir sólidos no válidos. Alambres –Guarda vértices ligaduras (aristas) Muy usado Puede producir sólidos no válidos Genera vistas, planos, etc. No permite cálculos volumétricos, momentos, etc.

5 2002 J.C.Dürsteler - UPF- IUA Modelos de Alambre Wireframe los objetos se representan mediante un conjunto de vértices unidos por aristas.los objetos se representan mediante un conjunto de vértices unidos por aristas. –aspecto poco realista –extremada simplicidad –trazado muy rápido –no requieren muestreo, –ideales para tareas en las que no es imprescindible el realismo. Hacerse una idea de una escena complicadaHacerse una idea de una escena complicada Preparar una animaciónPreparar una animación –Ambiguo

6 2002 J.C.Dürsteler - UPF- IUA Modelos de Alambre Wireframe Estructuras de datos:Estructuras de datos: – Una lista contiene todos los vértices del polígono –otra lista contiene los índices que apuntan a los vértices que forman una arista del objeto. Ejemplo.Ejemplo. –Rectángulo (0,0,0) (1,0,0)(0,1,0)(1,1,0)

7 2002 J.C.Dürsteler - UPF- IUA Modelos poligonales Los modelos de alambre son útiles pero poco realistas.Los modelos de alambre son útiles pero poco realistas. Más realismo: objetos descritos mediante las superficies que los limitan.Más realismo: objetos descritos mediante las superficies que los limitan. La mayoría se puede representar mediante polígonos.La mayoría se puede representar mediante polígonos. Sirven tanto para trazado de rayos como para proyección.Sirven tanto para trazado de rayos como para proyección.

8 2002 J.C.Dürsteler - UPF- IUA Modelos poligonales Estructuras de datos:Estructuras de datos: –Listas enlazadas Típicamente 4 listas.Típicamente 4 listas. –Lista con el número de polígonos, un apuntador a la lista de vértices y otro a la lista de polígonos. –Una lista de vértices –Lista de polígonos, cada uno apuntando a la lista de vértices del polígono –otra lista contiene los índices que apuntan a los vértices que forman una arista del objeto.

9 2002 J.C.Dürsteler - UPF- IUA Modelos poligonales La lista de vértices está accesible desde:La lista de vértices está accesible desde: –La lista principal. Para poder aplicarles transformaciones geométricas y/o proyectivasPara poder aplicarles transformaciones geométricas y/o proyectivas –los índices de las aristas para poder trazar los polígonospara poder trazar los polígonos La lista de vértices puede cambiar en la fase de recortadoLa lista de vértices puede cambiar en la fase de recortado

10 2002 J.C.Dürsteler - UPF- IUA Modelos poligonales Con el esquema anterior en el caso de proyección de los objetos sobre la pantalla, cada arista se está considerando dos veces en la fase de recortado.Con el esquema anterior en el caso de proyección de los objetos sobre la pantalla, cada arista se está considerando dos veces en la fase de recortado. Para suplir este problema, inexistente en el método de trazado de rayos, se suelen utilizar otras estructuras de datos en las que existe también una lista de aristas.Para suplir este problema, inexistente en el método de trazado de rayos, se suelen utilizar otras estructuras de datos en las que existe también una lista de aristas.

11 2002 J.C.Dürsteler - UPF- IUA Modelos poligonales Lista deLista de –polígonos, –aristas –vértices. La lista de aristas contiene para cada una de ellas apuntadores a los vértices que lo componen y a los polígonos Pol.1 y Pol.2 que la comparten.La lista de aristas contiene para cada una de ellas apuntadores a los vértices que lo componen y a los polígonos Pol.1 y Pol.2 que la comparten.

12 2002 J.C.Dürsteler - UPF- IUA Modelos poligonales El hardware especializado prefiere a menudo determinadas estructuras para especificar polígonos:El hardware especializado prefiere a menudo determinadas estructuras para especificar polígonos: Tiras (strips)Tiras (strips) –GL_LINE_STRIP –GL_TRIANGLE_STRIP –GL_QUAD_STRIP Abanicos (fans)Abanicos (fans) –GL_TRIANGLE_FAN Habitualmente se utilizan triángulos como aproximación poligonal.Habitualmente se utilizan triángulos como aproximación poligonal. Tira Abanico

13 2002 J.C.Dürsteler - UPF- IUA Carteleras (Billboards) La modelización de primitivas es cara en tiempo de CPULa modelización de primitivas es cara en tiempo de CPU Cartelera: Rectángulo con la imagen del objetoCartelera: Rectángulo con la imagen del objeto Puede tener imágenes del objetoPuede tener imágenes del objeto –según la orientación del mismo –según el estado de movimiento del objeto Muy usado en juegosMuy usado en juegos Transparente

14 2002 J.C.Dürsteler - UPF- IUA Modelado de Sólidos Muchas veces es necesario modelar sólidos de forma que:Muchas veces es necesario modelar sólidos de forma que: –Se puedan calcular propiedades VolumenVolumen MasaMasa DensidadDensidad Propiedades físicasPropiedades físicas –Se comprueben ColisionesColisiones Interferencias entre objetosInterferencias entre objetos Las representaciones poligonales no necesariamente representan sólidos –Pueden tener la apariencia –Pero son ambiguos.

15 2002 J.C.Dürsteler - UPF- IUA Propiedades deseables de un modelo (Requicha) Dominio de representación : el conjunto de objetos que se pueden representar mediante el modelo. Ha de ser suficientemente amplio.Dominio de representación : el conjunto de objetos que se pueden representar mediante el modelo. Ha de ser suficientemente amplio. Completitud (no ambigüedad) y unicidad : una representación ha de ser claramente identificable y representar un y sólo un objeto.Completitud (no ambigüedad) y unicidad : una representación ha de ser claramente identificable y representar un y sólo un objeto. –Unicidad : Una representación es única si cualquier sólido se puede representar de una única forma, dentro del marco del modelo. Imprescindible para poder decidir si dos objetos son iguales. Precisión : Un modelo es preciso si no es necesario realizar aproximaciones, como por ejemplo líneas curvas aproximadas por una series de segmentos rectilíneos.Precisión : Un modelo es preciso si no es necesario realizar aproximaciones, como por ejemplo líneas curvas aproximadas por una series de segmentos rectilíneos. Validez : Un modelo no debiera permitir crear una representación inválida. Por ejemplo si estamos modelando sólidos, no debiera ser posible crear un objeto que no sea sólido.Validez : Un modelo no debiera permitir crear una representación inválida. Por ejemplo si estamos modelando sólidos, no debiera ser posible crear un objeto que no sea sólido.

16 2002 J.C.Dürsteler - UPF- IUA Propiedades deseables de un modelo (Requicha) Facilidad : Debe ser fácil crear representaciones válidas y precisas.Facilidad : Debe ser fácil crear representaciones válidas y precisas. Clausura : Las operaciones definidas sobre objetos válidos deben producir otros objetos válidos. Por ejemplo bajo rotaciones, transformaciones geométricas, etc.Clausura : Las operaciones definidas sobre objetos válidos deben producir otros objetos válidos. Por ejemplo bajo rotaciones, transformaciones geométricas, etc. Compacidad : El uso de memoria debe ser lo más pequeño posible.Compacidad : El uso de memoria debe ser lo más pequeño posible. Eficiencia : Los algoritmos necesarios para representar sus propiedades y apariencia gráfica han de ser eficientes en términos de tiempo de cálculo.Eficiencia : Los algoritmos necesarios para representar sus propiedades y apariencia gráfica han de ser eficientes en términos de tiempo de cálculo. No es fácil crear modelos que cumplan todas estas especificaciones.

17 2002 J.C.Dürsteler - UPF- IUA Modelos de fronteras ObjetoSuperficiePolígonosAristas / Vértices División jerárquica

18 2002 J.C.Dürsteler - UPF- IUA Modelos de Fronteras Objeto Superficie Polígono Arista0Arista1Arista2Arista3Aristan... Vert0Vert1Vert2Vert3Vertn... Polígono Según Alan Watt 2000

19 2002 J.C.Dürsteler - UPF- IUA Modelo de fronteras Describen los objetos en función de las fronteras de sus carasDescriben los objetos en función de las fronteras de sus caras –Vértices –Aristas –Caras Las superficies curvasLas superficies curvas –se aproximan por polígonos –o se utilizan directamente (notable complicación) Poliedros –Sólidos cuya frontera es un conjunto de polígonos cuyas aristas son miembros de un número par de poligonos Simple: el que es topológicamente equivalente a una esfera.

20 2002 J.C.Dürsteler - UPF- IUA Extrusión o barrido (Sweep) El barrido de un objeto siguiendo una trayectoria en el espacio se denomina extrusión o barrido (sweep)El barrido de un objeto siguiendo una trayectoria en el espacio se denomina extrusión o barrido (sweep) Traslacional: un área 2D a lo largo de una trayectoria rectilinea siguiendo la normal al áreaTraslacional: un área 2D a lo largo de una trayectoria rectilinea siguiendo la normal al área –El volumen es el área del objeto por la distancia de barrido Rotacional: de una figura en torno a un eje.Rotacional: de una figura en torno a un eje.

21 2002 J.C.Dürsteler - UPF- IUA Extrusión o barrido (Sweep) OperaciónOperación –Crear cara + vector traslación –Calcular la cara opuesta –Generar las caras laterales. Estructura de datosEstructura de datos –Objetos 1ª Cara1ª Cara Numero de carasNumero de caras –Caras 3 normales a la cara 3 normales a la cara apuntador al 1r poligonoapuntador al 1r poligono –Polígonos Tipo (Frontera o Agujero), 1ª arista, numero de aristas, poligono siguienteTipo (Frontera o Agujero), 1ª arista, numero de aristas, poligono siguiente –Aristas numeración consecutivanumeración consecutiva –Puntos x, y, zx, y, z (0,5,0) (0,0,0) (10,0,0) (10,5,0) Objetos 1ª CaraNº Caras Caras Normal xNormal yNormalzPrimer pol. Poligonos Tipo1ª arista Num aristasPol. siguiente Puntos xyz

22 2002 J.C.Dürsteler - UPF- IUA Extrusión o barrido (Sweep) (10,0,0) (10,5,0) 36 Objetos 110 Caras Poligonos Fr142 Ag540 Fr944 Ag1340 Fr1740 Fr (0,5,0) (0,0,0) 2 3 Puntos Aristas

23 2002 J.C.Dürsteler - UPF- IUA Modelo de fronteras Poliedros El modelo de fronteras de un poliedro simple cumple la fórmula de Euler.El modelo de fronteras de un poliedro simple cumple la fórmula de Euler.V-A+C=2 –V=Vértices –A=Aristas –C=Caras La formula de Euler es condición necesaria, pero no suficiente para un sólidoLa formula de Euler es condición necesaria, pero no suficiente para un sólido –podríamos tener caras sueltas que cumplieran Euler Adicionalmente –cada arista debe conectar 2 vértices –debe estar compartida por dos caras –al menos 3 aristas deben concurrir en cada vértice –las caras no se deben interpenetrar

24 2002 J.C.Dürsteler - UPF- IUA Modelo de fronteras Poliedros Para poliedros con agujeros en las carasPara poliedros con agujeros en las carasV-A+C-F=2(P-G) –V=Vértices –A=Aristas –C=Caras –F=Anillos en las caras –P=Partes o Cáscaras –G=Agujeros pasantes V-A+C-F=2(P-G) =2(1-1)

25 2002 J.C.Dürsteler - UPF- IUA Modelo de fronteras Poliedros Operadores de EulerOperadores de Euler –Son un conjunto de operadores que satisfacen las fórmulas de Euler –Permiten transformar unos objetos en otros que siguen cumpliendo las formulas añadiendo, quitando o dividiendo las caras, vértices o aristas

26 2002 J.C.Dürsteler - UPF- IUA Operadores booleanos Interesa combinar objetos para producir otros.Interesa combinar objetos para producir otros. Operadores booleanosOperadores booleanos –Union –Union –Intersección –Intersección –Diferencia - Los operadores booleanos tradicionalesLos operadores booleanos tradicionales –pueden no dar otro sólido como resultado.

27 2002 J.C.Dürsteler - UPF- IUA Operadores booleanos regularizados Un objeto puede considerarse definido por puntosUn objeto puede considerarse definido por puntos –interiores –de la frontera los puntos frontera son aquellos cuya distancia al complemento del objeto es 0los puntos frontera son aquellos cuya distancia al complemento del objeto es 0 –no tienen por qué pertenecer al objeto. –Un conjunto cerrado contiene a sus puntos frontera –un conjunto abierto no contiene ninguno La unión de un conjunto con su frontera se llama clausura del conjunto. La regularización de un conjunto se define como la clausura de sus puntos interiores. Un conjunto que es igual a su regularización se denomina regular Podemos definir una operación regularizada A op* B = clausura(interior(A op B))

28 2002 J.C.Dürsteler - UPF- IUA Regularización Objeto con puntos frontera (gris oscuro) que no son parte del mismo. Puntos frontera en negro si pertenecen Clausura del Objeto Interior del Objeto Regularización (clausura del interior)

29 2002 J.C.Dürsteler - UPF- IUA Operadores booleanos vs regularizados Sección de dos objetosAntes de la intersecciónIntersección booleana Arista extra 1234 Intersección regularizada Incluye la frontera si ambos están del mismo lado (1-2), la excluye si están en lados opuestos (3-4). La común (2-3) siempre se incluye.

30 2002 J.C.Dürsteler - UPF- IUA Operadores booleanos regularizados IntroducimosIntroducimos * Unión regularizada* Unión regularizada * Intersección regularizada* Intersección regularizada -* Diferencia regularizada-* Diferencia regularizada Operaciones regularizadas en función de las no regularizadas

31 2002 J.C.Dürsteler - UPF- IUA Operadores booleanos regularizados A B A B Ai Bi A B Ai-B A B Bi-A Af Bi A B Bf Ai A B A B Af-B A B Bf-A A B Af Bf (=) A B Af Bf ( ) Operaciones regularizadas en función de las no regularizadas

32 2002 J.C.Dürsteler - UPF- IUA Geometría constructiva de Sólidos (CSG) Los objetos se guardan como árbolesLos objetos se guardan como árboles –con operaciones booleanas regularizadas como nodos internosbooleanas regularizadas como nodos internos geométricasgeométricas –con sólidos primitivos en los nodos externos (hojas) Como las operaciones no son conmutativas en general el arbol tiene un orden explícito de recorridoComo las operaciones no son conmutativas en general el arbol tiene un orden explícito de recorrido -* *

33 2002 J.C.Dürsteler - UPF- IUA CSG Para representar los sólidos se recorre el árbol ordenadamente realizando las operaciones.Para representar los sólidos se recorre el árbol ordenadamente realizando las operaciones. Puede que se pretenda calcularPuede que se pretenda calcular –la representación gráfica –propiedades como centro de masascentro de masas volumenvolumen momentos de inercia...momentos de inercia... La complejidad depende –de la forma en que estén guardadas las primitivas –de si el sólido final en la raíz del árbol se ha de representar o si sólo interesan algunas de sus partes

34 2002 J.C.Dürsteler - UPF- IUA Representaciones CSG Algunas representaciones sólo admiten primitivas sólidasAlgunas representaciones sólo admiten primitivas sólidas –Cualquier árbol representa otro sólido –Realizar cortes obliga a utilizar otro sólido, cuando sólo se necesitaría un semiespacio. Otras utilizanOtras utilizan –Primitivas sólidas –Semiespacios Hacer un corte resulta más sencillo Ciertas construcciones son más complejas –Un cubo es la intersección de 6 semiespacios Introduce problemas de validez. Determinadas operaciones no dan un sólido

35 2002 J.C.Dürsteler - UPF- IUA Representaciones CSG AplicacionesAplicaciones Se ha popularizado en CAD 3DSe ha popularizado en CAD 3D –Permite visualizar los sólidos a medida que los construyen –Los planos se generan solos –Cálculos volumétricos, de áreas, momentos de inercia, etc. En modelizadores, para construir sólidos que después se trazan por otros medios (ray tracing…)En modelizadores, para construir sólidos que después se trazan por otros medios (ray tracing…)

36 2002 J.C.Dürsteler - UPF- IUA Modelado de sólidos

37 2002 J.C.Dürsteler - UPF- IUA Instanciación de primitivas En el sistema hay definidas una serie de primitivas.En el sistema hay definidas una serie de primitivas. –Parametrizadas en una serie de propiedades –Sujetas a las transformaciones geométricas habituales. En CAD es habitual definir piezas comoEn CAD es habitual definir piezas como –engranajes, tornillos, etc –parametrizables Muchos sistemas de instanciación no permiten la combinación booleana. Suele existir una jerarquía de primitivas. Si se quiere realizar otra primitiva hay que escribir el código necesario.

38 2002 J.C.Dürsteler - UPF- IUA Modelos de descomposición celular El sólido es descompuesto enEl sólido es descompuesto en –una colección de sólidos –adyacentes –no intersectantes –más primitivos que el original –no necesariamente del mismo tipo que el original

39 2002 J.C.Dürsteler - UPF- IUA Modelos de descomposición celular: Enumeración espacial Se divide el espacio en una serie de celdasSe divide el espacio en una serie de celdas –idénticas –distribuidas en una malla regular –el sólido se representa mediante la enumeración de las celdas que están ocupadasque están ocupadas las que nolas que no

40 2002 J.C.Dürsteler - UPF- IUA Modelos de descomposición celular: Quadtrees Arboles cuaternariosArboles cuaternarios Caso particular Arbol de enumeración espacialCaso particular Arbol de enumeración espacial Para reducir la memoria los voxels cambian de tamaño en función de las características del sólido a representar.Para reducir la memoria los voxels cambian de tamaño en función de las características del sólido a representar.

41 2002 J.C.Dürsteler - UPF- IUA Modelos de descomposición celular: Quadtrees Copyrigyht Principles of Computer Graphics, Foley, Van Damm et al Nivel 0 1 2

42 2002 J.C.Dürsteler - UPF- IUA Modelos de descomposición celular: Octrees Un Octree es un Quadtree tridimensionalUn Octree es un Quadtree tridimensional La numeración es fundamentalLa numeración es fundamental –Se suele utilizar la numeración adjunta. –pero no existe un esquema estándar. Escala=2 nivelEscala=2 nivel Copyrigyht Principles of Computer Graphics, Foley, Van Damm et al

43 2002 J.C.Dürsteler - UPF- IUA Modelos de descomposición celular: Octrees Octree(x,y,z,escala){escalaq=escala/2; for (i=0, i<=7,i++){ determinar_origen(i); if (fuera (nodo(i) ) guarda(blanco); else if (dentro(nodo(i) guarda(negro); else if escalaq >1 { guarda(gris); Octree(x1,y1,z1, escalaq); } else guarda(negro); }

44 2002 J.C.Dürsteler - UPF- IUA Modelos de descomposición celular: Octrees AplicacionesAplicaciones MedicinaMedicina –Tomografía axial computerizada –Resonancia Magnética Nuclear –Radiología Análisis de materiales por rayos XAnálisis de materiales por rayos X

45 2002 J.C.Dürsteler - UPF- IUA Comparación de modelos ModeloDominioConcisión Operacion Booleanas CreaciónVisualización Fronteras Caras planas RegularDifícil Muy bueno CSG Sólidos primitivas Muy bueno Bueno- Muy bueno Bueno- Regular Desc. Celular Aproxima. por cubos Mal - regular Bueno Muy malo Bueno- Regular


Descargar ppt "Infografía 1 ModelizaciónModelización. 2002 J.C.Dürsteler - UPF- IUA Introducción La modelización trata deLa modelización trata de –los formalismos matemáticos."

Presentaciones similares


Anuncios Google