Modelos GeoméTricos Y Fractales

36
4 2 5 1 0011 0010 1010 1101 0001 0100 1011 Creación de Modelos Geométricos y Fractales: Construyendo Descripciones de Objetos Vanessa Santiago Olivares Glenn Méndez MATE 5500 Matemáticas Discretas 11 de febrero de 2010

Transcript of Modelos GeoméTricos Y Fractales

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

Árboles Binarios

1

01

1 11 1 1

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)

BA− C CBA ∪− )(∪ =

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

42513

0011 0010 1010 1101 0001 0100 1011

¿Preguntas?