910 likes | 1.27k Vues
Computación Gráfica 12. Curvas y Superficies. Temario. Representaciones de curvas y de superficies Splines y otras bases polinomial Puntos. Representaciones Geométricas. Geometría Sólida Constructiva (Constructive Solid Geometry CSG) – operadores booleanos (o de conjunto
E N D
Computación Gráfica 12 Curvas y Superficies
Temario • Representaciones de curvas y de superficies • Splines y otras bases polinomial • Puntos
Representaciones Geométricas • Geometría Sólida Constructiva (Constructive Solid Geometry CSG) – operadores booleanos (o de conjunto • Representaciones Paramétricas • Polígonos - mallados • Subdivision de superficies • Superficies Implícitas • Superficies basadas en puntos
Representaciones Geométricas Objeto construído mediante CSG convertido a polígonos
+128 0 -127 D(A) A A +128 0 -128 2D, SignedEuclideanDistanceFieldsD(A) D(A) Morphological Domain 0
Geometry representaciónes Operadores de CSG aplicados a superficies implícitas
Representaciones Geométricas Descripciones de superficies basadas en puntos Ohtake, et al., SIGGRAPH 2003
Subdivisión del icosahedro = Esfera geodésica (R. Buckminster Fuller) “Spaceship Earth”, Epcot, Walt Disney World
Biosfera de Montreal Projecto Eden: bioma tropical Grimshaw Architects, 2001
Representaciones Geométricas Subdivisión de superficie Catmull-Clark de un cubo
Representaciones Geométricas Subdivisión de superficie (diferentes niveles de refinamiento) (ver Sierpiński…) Gráficos tomados de Subdivision.org
Jorge Márquez - IPCYL: Image Processing of Cylindrical Range Data Jorge Márquez Flores, Isabelle Bloch and Francis Schmitt
Geometrías de Mallado Global para Imágenes de Profundidad de Escenas 3D
Subdivisión de superficie • Carpeta de Sierpiński – Subdivisión recursiva de un triángulo • (en este caso no produce un mallado Euleriano – ver abajo) • Otras aplicaciones de la subdivisión recursiva: • voxelización de un mallado arbitrario • (Derecha: ejemplo a dos órdenes de subdivisión) Nota: la subdivisión que presentan los cuadtrees (u octrees en 3D) no es Euleriana, pero no es el mallado de ninguna superficie; es una representación de árbolcompacta de ocupación espacial.
Combinando dos resoluciones en un solo mallado Euleriano (a la derecha, ídem pero triangular)
Construcción de mallados triangulares a partir de un campo escalar o binario: Marching Cubes Voxeles dentro del objeto Cada configuración de ‘s determina un “parche” del mallado de la superficie
CONSTRUCTION OF A MODEL OF THE HIGH GASTROINTESTINAL SYSTEM FOR THE SIMULATION OF UPPER ENDOSCOPY PROCEDURES Alfonso Gastelum, Lucely Mata Castro, Jorge Márquez Marching-cubes segmentation
Representaciones Geométricas • Ventajas y desventajas • Facilidad de uso para diseño • Facilidad y rapidez para renderizado • Simplicidad • Suavidad • Detección de colisiones • Flexibilidad (en muchos sentidos) • Adecuadas para simulaciones • Costo en memoria • No adecuadas para objetos complejos • Difícil usar Ray Tracing en algunos casos • No funcionan bien con objetos muy irregulares
Representaciones Paramétricas Curvas: Superficies: Volúmenes: etcétera... Nota: una función vectorial en de variable escalar (curva en el espacio) comprende n funciones escalares
Una misma Curva/superficie puede tener múltiples representaciones (diferencias resultan irrelevantes) Representaciones Paramétricas- No son únicas -
Geometría Diferencial Simple • Tangente a una curva • Tangentes a superficie • Normal a una superficie • También: curvatura, normales de una curva, vector bi-normal de una curva, etcétera... • Casos degenerados: ó:
Discretización • Curvas arbitrarias tienen un incontable número de parámetros i.e. se especifican valores de coeficientes de las funciones en todos los puntos de una línea de números reales (como un espectro contínuo de Fourier).
Discretización • Curvas arbitrarias tienen un incontable número de parámetros, formando un contínuo (espectro). • Escoger un conjuntocompleto de bases de funciones • Polinomios, series de Fourier, etc. • Truncar el conjunto a un grado razonable, por ejemplo: • Función representada por el vector (lista) de • Las pueden ser vectores
Bases polinomiales Bases de potencias Los elementos de son linealmente independientes, i.e. no es buena aproximación Si no se consideran varios aspectos se obtienen resultados mediocres, por ejemplo una rigidez extraña
Especificando una Curva Dados valores deseados (constricciones) cómo determinar Los coeficientes para una base de potencas cúbicas? Por lo pronto asumimos
Especificando una Curva Dados valores deseados (constricciones) cómo determinar Los coeficientes para una base de potencas cúbicas?
Especificando una Curva Dados valores deseados (constricciones) cómo determinar Los coeficientes para una base de potencas cúbicas?
Especificando una Curva Dados valores deseados (constricciones) cómo determinar Los coeficientes para una base de potencas cúbicas?
Especificando una Curva Dados valores deseados (constricciones) cómo determinar Los coeficientes para una base de potencas cúbicas?
Especificando una Curva Dados valores deseados (constricciones) cómo determinar Los coeficientes para una base de potencas cúbicas? Base de funciones de Hermite
Especificando una Curva Dados valores deseados (constricciones) cómo determinar Los coeficientes para una base de potencas cúbicas? Probably not a scale. Base de funciones de Hermite
Base de Hermite • Curva especificada por • Valores de puntos esquina (end-points) • Tangentes en dichos puntos (derivadas) • Intervalo de parámetros arbitrario (casi siempre) • No es necesario recalcular las bases de funciones • Hermitecúbico • Puede construirse para cualquier grado impar • Derivadas en los puntos esquina o finales
Bézier Cúbico Similar a Hermite, pero especificando las tangentes indirectamente Nota: todos los puntos de control son puntos en el espacio, no tangentes.
Bézier Cúbico Similar a Hermite, peroespecificandolastangentesindirectamente Relación entre coeficientespolinomiales y de Bézier:
Bézier Cúbico (d=3) Elementos de la base de funciones Bézier
Funciones Base (o base de funciones) • Un punto en una curva de Hermite se obtiene multiplicando cada punto de control por una función y sumando todo • Las funciones constituyendo una base de funciones
Cambiando Bases • Bases de potencias, de Hermite y de Bézier son sólamente polinomios cúbicos • Las tres bases generan el mismo espacio • Como ejes diferentes en • Cambios de base
Propiedades utiles de una base • Convex Hull (Carcasa convexa) • Todos los puntos en curva quedan dentro de la caracasa convexa de los puntos de control • La base de Bézier tiene la propiedad de carcasa convexa
Propiedades utiles de una base • Invariancia bajo clases de transformaciones • Transformar curvas es lo mismo que transformar puntos de control • Base de Bézier invariante para transformaciones afines • Base de Bézier NO es invariante para transformaciones de perspectiva • NURBS (Non-Uniform Rational Bézier Splines) son en extremo difíciles...
Propiedades utiles de una base • Soporte local • Cambiar UN punto de control Punto tiene poco impacto en toda la curva • Reglas de subdivisión muy convenientes • Esquema de evaluación rápido • Interpolación -vs- aproximación
Evaluación de DeCasteljau • Un esquema de evaluación geométrica para Bézier
Uniendo Si se cambian a, b, o c hay que cambiar los demás Pero si se cambian a, b, o c no se tienen cambios más allá de esos tres. *Soporte Local*