Upload
maestro-de-matematicas
View
4.253
Download
2
Embed Size (px)
Citation preview
42513
0011 0010 1010 1101 0001 0100 1011
Creación de Modelos Geométricos y Fractales:
Construyendo Descripciones de Objetos
Vanessa Santiago OlivaresGlenn Méndez
MATE 5500 Matemáticas Discretas11 de febrero de 2010
42513
0011 0010 1010 1101 0001 0100 1011
Introducción
• Objetivo de los modelos– Generación, almacenaje y manipulación de
representaciones de objetos por computadoras
• La velocidad y eficiencia del proceso debe considerar dos aspectos principales– La manera de estructurar u organizar los datos– La manera de generar o definir los datos
42513
0011 0010 1010 1101 0001 0100 1011
Estructuras de Datos
• Las maneras más comunes de organizar los datos son– Listas enlazadas en espacios contiguos de
memoria– Listas enlazadas usando punteros (“pointers”)– Listas abstractas de datos– Árboles binarios
42513
0011 0010 1010 1101 0001 0100 1011
Listas Enlazadas en Espacios Contiguos de Memoria
• Se utilizan típicamente para matrices o listas de datos de longitud específica
• Estos se almacenan en espacios consecutivos de memoria
A A11 A12 A21 A22Nulo
=
2221
1211
AA
AAA
42513
0011 0010 1010 1101 0001 0100 1011
Listas Enlazadas Usando Punteros
• Los punteros o “pointers” son referencias a lugares específicos de memoria
• Permiten almacenar información en lugares discontinuos de memoria
• Esto facilita el poder insertar o remover datos en las listas de datos
42513
0011 0010 1010 1101 0001 0100 1011
Listas Enlazadas Usando Punteros
=
2221
1211
AA
AAA
#233 #677
#234 A #678 A21
#235 A11 #679 A22
#236 A12 #680 Nulo
#237 #678 #681
#238 #682
42513
0011 0010 1010 1101 0001 0100 1011
Listas Abstractas de Datos
• Es común para las listas que incluyen varios elementos o tipos de datos (figuras, vértices, bordes, etc.)– Son buenas para modelos geométricos
• La lista sólo contiene los punteros de los lugares en memoria donde se encuentran los datos de cada uno de los elementos
42513
0011 0010 1010 1101 0001 0100 1011
Listas Abstractas de Datos
D
C
BA
X27
X27
#8A
#D2
#FA
#88
Null
Memoria
X27
#8A
#D2
#FA
#88
Nulo
42513
0011 0010 1010 1101 0001 0100 1011
Árboles Binarios
• Ayudan a establecer la jerarquía en los modelos geométricos– La raíz o rama es un nodo “padre”– Puede tener uno o dos sucesores o nodos “hijo”– Nodos que no tienen hijos son nodos “hoja”
• Si alguno de los elementos se borra, todo lo atado a ese elemento también se borra
• Puede usar listas abstractas de datos para guardar los datos de los diferentes elementos
42513
0011 0010 1010 1101 0001 0100 1011
Generación de Modelos Geométricos
• Los sistemas de generación de modelos geométricos deben ser– Preciso– Compacto para almacenar– Fácil de generar– Rápido de representar– De validez garantizada
• Estos requerimientos pueden ser conflictivos
42513
0011 0010 1010 1101 0001 0100 1011
Generación de Modelos Geométricos
• Algunos de los métodos para generar estos modelos son– Métodos de modelo voxel– Geometría sólida constructiva (CSG)– Representación de fronteras (“B-Rep”)– Modelaje de equi-superficies– Fractales
42513
0011 0010 1010 1101 0001 0100 1011
Métodos de Modelo Voxel
• Divide el espacio en pequeñas unidades (cubitos) o elementos de volumen (voxel)
• Evalúa cada unidad para determinar si pertenece o no al objeto
• El resultado final parece como construido con bloques LEGO
42513
0011 0010 1010 1101 0001 0100 1011
Métodos de Modelo Voxel
• La resolución del elemento aumenta en la medida que hacemos las unidades más pequeñas– Esto aumenta los requerimientos de memoria
42513
0011 0010 1010 1101 0001 0100 1011
Métodos de Modelo Voxel
• Al cambiar las propiedades que se desean en el modelo, se puede obtener diferentes representaciones. Por ejemplo– Color– Densidad– Profundidad
42513
0011 0010 1010 1101 0001 0100 1011
Métodos de Modelo Voxel
• Superimponiendo los modelos resultantes es posible obtener un modelo más completo y detallado
• Estos modelos son fáciles de programar, pero sus requerimientos de memoria los hace lentos
• Sus aplicaciones están limitadas a la medicina y donde hacen falta ilustraciones de alta resolución y calidad.
42513
0011 0010 1010 1101 0001 0100 1011
Geometría Sólida Constructiva (CSG)
• Combina formas tridimensionales estándares, tales como cubos, esferas, conos, cilíndricos y otras, para construir el objeto de interés– La combinación se hace con los procesos de
unión, intersección y diferencia de conjuntos
BA∪ BA∩ BA−
42513
0011 0010 1010 1101 0001 0100 1011
Geometría Sólida Constructiva (CSG)
• Los usuarios definen los parámetros de cada figura para identificar localización, tamaño, color, orientación, etcétera
A B BA−− =
42513
0011 0010 1010 1101 0001 0100 1011
Geometría Sólida Constructiva (CSG)
• Los conjuntos de datos que resultan de estos modelos son más compactos que los demás métodos– Esto es debido a que las ecuaciones que
describen las figuras son siempre las mismas– Sólo es necesario evaluarlas con los parámetros
dados (dimensión, orientación, localización) y la relación entre las figuras (álgebra Booleana)
• Muy utilizado en sistemas de CAD/CAM
42513
0011 0010 1010 1101 0001 0100 1011
Representación de Fronteras (“B-Rep”)
• Método usado para generar imágenes de calidad• Las características de la superficie de un objeto
son descritas explícitamente usando poliedros– No permite superficies curvas ya que las caras de los
poliedros son planas
• Esto permite que sean desplegados rápidamente y con buena precisión
42513
0011 0010 1010 1101 0001 0100 1011
Representación de Fronteras (“B-Rep”)
• El modelo almacena datos de vértices, bordes y caras, y la relación entre estas
B
C
D
A Planos
ACD
ADB
ABC
BCD
Bordes
AB
AC
AD
BC
BD
CD
Vértices
A
B
C
D
42513
0011 0010 1010 1101 0001 0100 1011
Representación de Fronteras (“B-Rep”)
• Necesitan sets amplios de datos, son complejos y no tienen validez geométrica garantizada
• Algoritmos pueden ayudar a determinar la validez geométrica, pero no son infalibles– Fórmula topológica de Euler
• Es condición necesaria, pero no suficiente
42513
0011 0010 1010 1101 0001 0100 1011
Representación de Fronteras (“B-Rep”)
• Formula topológica de Euler
• Formula extendida Euler-Poincaré
v – e + f = 2
v = #vértices
e = #bordes
f = #caras
v – e + f = 2(s – h) + r
v = #vértices s = #objetos separados
e = #bordes h = #huecos que atraviesan
f = #caras r = #anillos o bordes dentro de las caras
42513
0011 0010 1010 1101 0001 0100 1011
Modelaje de Equi-Superficies
• También se conoce modelaje de objetos suaves
• Es particularmente apropiado para modelar sustancias gelatinosas (blobby) y objetos de bordes suaves
• Se genera al definir una función de campo escalar de valor constante
( ) constante,, =zyxφ
42513
0011 0010 1010 1101 0001 0100 1011
Modelaje de Equi-Superficies
En cada figura, los colores representan superficies en las
que la propiedad de interés tiene valor constante.
42513
0011 0010 1010 1101 0001 0100 1011
Modelaje de Equi-Superficies
1)1(
322
22
=+−=+yx
yx
1888 =++ zyx
42513
0011 0010 1010 1101 0001 0100 1011
Modelaje de Equi-Superficies
• Se prestan también para usar álgebra booleana y combinar objetos– Ejemplo: generar huecos de las caras del dado
• Usa un método similar al voxel para determinar si el espacio pertenece o no a la superficie bajo evaluación– Los espacios que pertenecen se guardan
42513
0011 0010 1010 1101 0001 0100 1011
Fractales
• No son considerados métodos para la generación de modelos geométricos– Producen modelos de objetos 2D y 3D de difícil
aplicación
• Propiedades (ideales): – Similitud propia: cualquier subconjunto del objeto es
una copia del objeto completo. – Sub-divisibilidad infinitesimal: no hay cambio en la
cantidad de detalles observables a diferentes niveles de magnificación.
42513
0011 0010 1010 1101 0001 0100 1011
FractalesCurva Koch Reemplazamiento recursivo de líneas de segmentos
por poli-líneas que consisten de cuatro líneas, cada una de un tercio del largo original.
42513
0011 0010 1010 1101 0001 0100 1011
Fractales
Sierpinski Extracción recurrente de formas desde el interior de la forma original
42513
0011 0010 1010 1101 0001 0100 1011
Fractales
Curva que visita cada punto dentro de una región
Curva de Peano
42513
0011 0010 1010 1101 0001 0100 1011
Fractales
• La importancia de los fractales radica en la capacidad de establecer elementos con las mismas características a escalas menores
N = (1/f)D, dondeN = Número de copiasf = escalaD = dimensión de la figura
D = 3 dimensionesf = ½N = (1/½)3 = (2)3 = 8
42513
0011 0010 1010 1101 0001 0100 1011
Fractales
• Muchos objetos de la naturaleza presentan un comportamiento estadísticamente similar al de los fractales, es decir, propiedades fractales– Ejemplos: irregularidad de costas y montañas,
ramas de árboles y coral, etcétera
42513
0011 0010 1010 1101 0001 0100 1011
Fractales
• Esta característica ha sido utilizada por algunos algoritmos para aplicaciones específicas– Sistemas L: ramas de plantas– Sistemas de función iterativa: compresión de
imágenes– Modelaje de terrenos