You are on page 1of 69

Modelado de slidos

Basado en: Captulo 10

Del Libro: Introduccin a la Graficacin por Computador


Foley Van Dam Feiner Hughes - Phillips

Resumen del captulo


Representacin de slidos Operaciones regularizadas de conjuntos booleanos Generacin de ejemplares de primitivas Representacin de barrido Representacin de fronteras Representacin de particin espacial Geometra slida constructiva

Representacin de slidos

Representacin de slidos
Capacidad de representacin de slidos. Qu representacin es adecuada para representar slidos? Considerar representaciones tales como: Colecciones de lneas rectas, curvas, polgonos y superficies

Representacin de slidos
Un modelo es una representacin de la realidad. Permite estudiar y comprender el comportamiento de la realidad bajo anlisis. En algunos casos, proporcionar medios para predecir la evolucin del modelo planteado. Problemas: La realidad es muy compleja. No queda otra alternativa que recurrir a simplificaciones.

Representacin de slidos
Los sistemas de representacin de slidos describen objetos. Diferentes modelos geomtricos se aplican en la construccin de objetos tridimensionales. Las diferentes tcnicas empleadas persiguen, sin que todas lo consigan: Distinguir partes internas, partes externas, superficies, etc. Determinar las posibles interferencias entre slidos. Aplicar anlisis (simulacin) para determinar la respuesta de los slidos a factores como la tensin, la temperatura, etc. Hacer posible su construccin de forma automtica con maquinaria adecuada.

Representacin de slidos
Las dos caractersticas a resolver con un modelo geomtrico son: La forma de representacin del slido. La forma de almacenamiento. Conciliacin entre espacio de almacenamiento y tiempo de proceso.

Elementos a considerar de un modelo de representacin de slidos:


Precisin. Representacin real de un objeto, sin aproximaciones. Dominio. Conjunto de objetos que se pueden representar con el modelo. Ausencia de ambigedad. No deben existir dudas sobre el objeto representado. Unicidad. Un slido se codifica de una nica forma. Validez. Un modelo de representacin impide la reproduccin de slidos no vlidos. Cierre. Operaciones sobre slidos dan como resultado nuevos slidos. Compacta. Reducir el espacio de almacenamiento, mejorndose el rendimiento del sistema. Eficiencia. Algoritmos eficientes en el clculo de las propiedades fsicas de los slidos, as como su representacin en pantalla.

Modelado de alambres
Hoy en da es considerado una forma de representacin ms que un mtodo de modelado. til en aplicaciones tipo CAD. Un objeto es representado mediante una coleccin de aristas. El esqueleto del objeto. Ninguna informacin sobre las propiedades superficiales.

Modelado de alambres
Ventajas:
Simplicidad de clculos. nicamente muestra la composicin de la escena.

Desventajas:
Ambigedad en la representacin. No se pueden eliminar lneas ocultas, no existen caras. La informacin sobre el volumen real es inexistente. Incapacidad de representar perfiles curvados. Las superficies curvas se intuyen, pero no se representan (ejemplo, cilindro). Incapacidad de detectar interferencias entre objetos. Se desconocen los lmites del objeto. Dificultades en el clculo de las propiedades fsicas de los objetos. Incapacidad para aplicar mtodos de iluminacin y sombreado. Realismo muy pobre.

Representacin de slidos
En las siguientes figuras se definen objetos slidos?

Operaciones regularizadas de conjuntos booleanos

Las operaciones comunes para combinar objetos son las operaciones booleanas de conjuntos, como la unin, la diferencia y la interseccin como se muestra en la siguiente figura:

Operaciones regularizadas de conjuntos booleanos

La aplicacin de una operacin booleana ordinaria de conjuntos a dos objetos slidos, produce necesariamente un objeto slido?

Operaciones regularizadas de conjuntos booleanos


NO.
En lugar de emplear los operadores booleanos ordinarios de conjuntos, usaremos los operadores booleanos regularizados de conjuntos denotados como * ,* ,* y definidos de manera que las operaciones con slidos siempre generen slidos. Por ejemplo, la interseccin booleana regularizada de dos cubos que se unen en un solo vrtice es el objeto nulo.

Operaciones regularizadas de conjuntos booleanos


Para examinar la diferencia entre los operadores ordinarios y los regularizados, se puede considerar cualquier objeto como definido por un conjunto de puntos y dividido en puntos interiores y puntos de frontera como se muestra en la siguiente figura

Definiciones:
Conjunto abierto: es aquel que est formado por elementos que slo estn rodeados por elementos del mismo conjunto. Puntos de frontera de un conjunto: son aquellos puntos que estn rodeados tanto por elementos del conjunto como de su complemento. Cerradura: Es la unin de un conjunto con el conjunto de sus puntos de frontera. Conjunto cerrado: es aquel que es igual a su cerradura. Interior de un conjunto C: Est formado por aquellos puntos tales que tienen un entorno que est completamente incluido en el conjunto. No son puntos frontera. Es el conjunto abierto ms grande contenido en C.

Operaciones regularizadas de conjuntos booleanos


La regularizacin de un conjunto se define como la cerradura de los puntos interiores del conjunto. (b) es la cerradura de (a). (c) es el interior de (a). (d) es la cerradura del interior de (a).

Operaciones regularizadas de conjuntos booleanos


Un conjunto regular no puede contener ningn punto de frontera que no sea adyacente a un punto interior, es decir no puede tener puntos, lneas o superficies de frontera colgantes. Se puede definir un operador booleano regularizado de conjuntos en funcin de un operador ordinario como

Donde op son las operaciones unin, interseccin o resta normales.

Operaciones regularizadas de conjuntos booleanos


Comparacin entre operaciones booleanas ordinarias y regularizadas de conjuntos aplicadas a conjuntos regulares. Se consideran dos objetos en la siguiente figura:

Operaciones regularizadas de conjuntos booleanos

Operaciones regularizadas de conjuntos booleanos


Los resultados de cada operador regularizado se pueden definir en funcin de los operadores ordinarios aplicados a las fronteras y a los interiores de los objetos. En la siguiente tabla se indica la manera en que se definen los operadores regularizados para objetos A y B cualesquiera. Ab y Ai son la frontera y el interior de A respectivamente. Ab inter Ab iguales es la parte de la frontera compartida por A y B donde Ai y Bi estn en el mismo lado.

Operaciones regularizadas de conjuntos booleanos


Ab inter Bb diferentes es la parte de la frontera compartida por A y B para la cual Ai y Bi caen en lados opuestos.

Esto se aplica a b (punto) si no es adyacente a ningn punto i. Cada uno de los operadores regularizados est definido por la unin de los conjuntos asociados con las filas que tienen un punto en la columna del operador

Generacin de ejemplares de primitiva

Generacin de ejemplares de primitivas


El mtodo de modelado define un conjunto (base de datos) de formas slidas bsicas tridimensionales (llamadas primitivas). Las primitivas pueden parametrizarse: disponen de puntos de control modificables por el usuario. Ejemplo: Una pirmide regular donde el usuario define el nmero de caras que se unen en el pice. Mtodo de uso frecuente en el diseo de objetos de alta complejidad. Ejemplo. Diseo de tuercas y engranajes. Un engranaje puede ser caracterizado por su dimetro y el nmero de dientes.

Generacin de ejemplares de primitivas


Dimetro 4.3 Agujeros 4 Dientes 25

Dimetro 8.2 Agujeros 8 Dientes 60

Generacin de ejemplares de primitivas

Generacin de ejemplares de primitivas


Aunque se pueda construir una jerarqua de ejemplares de primitivas, cada ejemplar de nodo hoja sigue siendo un objeto definido por separado. En la generacin de ejemplares de primitivas no hay medios para combinar objetos y crear uno nuevos de mayor nivel usando por ejemplo las operaciones booleanas regularizadas de conjuntos. Por lo tanto la nica forma de crear un nuevo tipo de objeto es escribiendo el cdigo que lo define.

Representacin de barrido

Representacin de barrido
El desplazamiento de un rea a lo largo de una trayectoria define un nuevo objeto, llamado barrido.

Dos tipos de desplazamientos: Desplazamiento traslacional o extrusin. Un rea bidimensional desplazado a lo largo de una trayectoria lineal, normal al plano del rea, genera un volumen. Ejemplo. Un cilindro se puede definir a partir de una circunferencia, que sera su base.

Representacin de barrido
Desplazamiento rotacional. Rotacin de un rea respecto de un eje. De esta manera, se define un cilindro a partir de un rectngulo, tomando como eje de rotacin uno de sus lados.

Representacin de barrido

Representacin de barrido
En trminos generales es difcil aplicar las operaciones regularizadas de conjuntos booleanos a los barridos sin antes convertirlos a otra representacin. Incluso los barridos ms simples no son cerrados con las operaciones booleanas regularizadas de conjuntos. Por ejemplo la unin de dos barridos simples generalmente no es un barrido simple, como se ve en la siguiente figura.

Representacin de barrido

Representacin de frontera

Representacin de frontera
Tambin conocida como Boundary representation o B-rep. En este mtodo se definen los objetos en funcin de la superficie que los encierra (su frontera), describiendo sus vrtices, aristas y caras. En algunos mtodos especializados B-rep se restringen las caras a solamente tringulos y polgonos convexos. Esta generalizacin hace que muchos modelos pierdan cierta resolucin. Las caras curvas se aproximan por medio de polgonos. Aumentan las necesidades de memoria para almacenar estructuras de datos.

Representacin de frontera

Representacin de frontera
Un poliedro es un slido acotado por un conjunto de polgonos cuyas aristas pertenecen a un nmero par de polgonos. Un poliedro simple es aquel que puede deformarse para obtener una esfera, es decir, un poliedro que a diferencia de un toro, no tiene agujeros. La representacin de frontera de un poliedro simple satisface la Frmula de Euler. V- A + C = 2 V Nmero de vrtices A Nmero de aristas C Nmero de caras

Representacin de frontera
V5 A8 C5 V6 A 12 C8 V8 A 12 C6

Representacin de frontera
La frmula de Euler an es aplicable si se permiten aristas curvas y caras no planas. La frmula de Euler establece condiciones necesarias, aunque no suficientes, para que un objeto sea un poliedro simple. Se pueden construir objetos que satisfagan la frmula de Euler, pero no acotan un volumen, sin ms que aadir una o ms caras o aristas colgantes a un slido que de otra manera sera vlido. Se requieren otras restricciones para garantizar que un objeto sea un slido.

Representacin de frontera
Restricciones: Cada arista debe conectar dos vrtices. Cada arista debe estar compartida por exactamente dos caras. Al menos tres aristas deben unirse en cada vrtice. Las caras no deben ser interpenetrables.

Representacin de frontera
Una generalizacin de la Frmula de Euler, en la que se consideran caras con agujeros. V A + C - H = 2( D - G) V Nmero de vrtices A Nmero de aristas C Nmero de caras H Nmero de agujeros en las caras D Nmero de componentes separados del objeto G Nmero de agujeros que atraviesan el objeto

Representacin de frontera
V A + C - H = 2(D G) V 24; A 36; C 15; H 3; D 1; G 1

Representacin de frontera
Baumgart introdujo los operadores de Euler. Un usuario no puede construir cualquier slido. Los operadores de Euler trabajan aadiendo y eliminando vrtices, aristas y caras a un poliedro de partida. Los operadores de Euler evitan la construccin de poliedros invlidos (operacin cerrada). Las estructuras de datos para el manejo de representaciones de frontera estn basadas en grafos que describen las relaciones topolgicas del poliedro.

Representacin de frontera
La representacin de fronteras ms simple es una lista de caras poligonales, cada una de ellas caracterizada por una lista de coordenadas de los vrtices.

Representacin de particin espacial

Representacin de particin espacial


Dividen el espacio en un conjunto de celdas cbicas (llamadas voxel. Contraccin de las palabras inglesas elemento de volumen). Dibujar un objeto no es ms que estudiar si las celdas estn ocupadas (total o parcialmente) o vacas. En funcin del grado de ocupacin de las celdas, los mtodos de ocupacin espacial se diferencian en dos puntos fundamentales: Cmo dividir el espacio?. Qu hacer cuando se detecta una celda parcialmente ocupada?.

Representacin de particin espacial


Mtodo 1: Enumeracin de ocupacin espacial

Representacin de particin espacial


Mtodo 1: Enumeracin de ocupacin espacial. Descompone la escena en un nmero prefijado de celdas idnticas dispuestas sobre una malla regular fija. El tipo ms comn de celda es el cubo y la representacin del espacio como una matriz regular de cubos se denomina cuberil. Los objetos se codifican con una lista nica y no ambigua de celdas ocupadas. No existe el concepto de ocupacin parcial. Los objetos con superficies curvas slo pueden aproximarse (falta de precisin).

Representacin de particin espacial


Mtodo 1: Enumeracin de ocupacin espacial. nicamente pueden representarse con exactitud objetos cuyas caras son paralelas a los lados del cubo (en el caso de que las celdas sean cubos) y cuyos vrtices corresponden a la malla. Las celdas pueden ser tan pequeas como se desee, ahora bien si aumenta el nmero de celdas que componen la malla tambin aumenta el espacio de almacenamiento.

Particin espacial: descomposicin de celdas

Representacin de particin espacial


Mtodo 2: rboles de octantes (octree). Variante jerrquica de la enumeracin de ocupacin espacial, diseada para optimizar sus exigentes requisitos de almacenamiento. Mxima: Divide y vencers. Los rboles de octantes se derivan de los rboles de cuadrantes, un formato de representacin bidimensional. Un rbol de cuadrantes se forma dividiendo sucesivamente un plano bidimensional en sus dos direcciones (X, Y) para formar cuadrantes. Cada cuadrante puede estar lleno, parcialmente lleno o vaco.

Representacin de particin espacial


Mtodo 2: rboles de octantes (octree).

Representacin de particin espacial


Mtodo 2: rboles de octantes (octree).

Representacin de particin espacial


Mtodo 2: rboles de cuadrantes (quadtree). Un cuadrante parcialmente lleno se subdivide recursivamente en subcuadrantes. Este proceso de divisin contina hasta que todos los cuadrantes sean homogneos, bien llenos o vacos (nivel de profundidad). Si 4 cuadrantes hermanos estn llenos o vacos se eliminan y su padre se reemplaza por un nodo totalmente lleno o vaco. Cualquier nodo parcialmente lleno en la profundidad lmite se clasifica como lleno, con lo que tampoco existe el concepto de ocupacin parcial, una vez alcanzado el nivel mximo de subdivisin.

Representacin de particin espacial


Mtodo 2: rboles de octantes (octree). La idea de los rboles de cuadrantes se generaliza de forma sencilla a tres dimensiones utilizando los rboles de octantes. El rbol de octantes es similar al de cuadrantes, excepto que aquel subdivide sus tres dimensiones. De esta forma, se obtiene una descomposicin espacial con celdas de distintos tamaos, pudiendo realizarse una gestin ms eficaz de la memoria. Se puede demostrar que el nmero de nodos en una representacin del rbol de octantes o de cuadrantes es proporcional a la superficie o al permetro del objeto. La subdivisin de nodos surge exclusivamente por la necesidad de representar la frontera del objeto que se codifica.

Representacin de particin espacial

Representacin de particin espacial

Operaciones booleanas con Representacin de particin espacial

Geometra slida constructiva

Geometra slida constructiva


Las primitivas simples se combinan a travs de operadores booleanos de conjunto, incluidos directamente en la representacin (AND, OR, NOT). Un objeto se almacena como un rbol binario con operadores en los nodos intermedios y primitivas simples en las hojas. En algunas implementaciones, las primitivas son slidos simples, como los cubos o esferas, para asegurar que todas las combinaciones den como resultado slidos vlidos tambin

Geometra slida constructiva


Nos permiten combinar objetos para formar nuevos objetos. La aplicacin de una operacin booleana de conjunto a dos objetos slidos no necesariamente produce un objeto slido. Por ejemplo, la interseccin ordinaria de dos cubos que se unen en un solo vrtice es un punto.

Geometra slida constructiva

Geometra slida constructiva


Nodo raz (objeto)

Nodos intermedios (Operadores)

Primitivas = nodos hoja

Geometra slida constructiva


En otras implementaciones, las primitivas incluyen semiespacios, que en s no son slidos acotados. Por ejemplo, un cubo se puede definir como la interseccin de seis semiespacios. Otro ejemplo, un cilindro finito puede definirse como un cilindro infinito limitado en sus extremos por dos semiespacios planos, con forma de circunferencia. Problema de validez. No todas las combinaciones producen slidos vlidos. Problemas de representacin. Los modelos basados en CSG no ofrecen una representacin nica. Al aplicar la misma operacin a dos objetos que son inicialmente iguales se pueden generar resultados diferentes.

Geometra slida constructiva

Geometra slida constructiva


CSG permite calcular con sencillez las propiedades fsicas de los objetos modelados. - Resuelve con facilidad las interacciones entre objetos. - Maneja de igual forma superficies curvas y polidricas. - Forma natural e intuitiva para el diseo de un gran nmero de objetos. - Sin embargo, cada vez que se genera un objeto hay que redibujar el rbol, resolviendo las operaciones booleanas. Consecuencia, la generacin de escenas complejas (muchos objetos) puede ser lenta.

FIN

You might also like