Presentacion Splines
-
Upload
jmorenotito -
Category
Travel
-
view
7.512 -
download
5
Transcript of Presentacion Splines
Splines: Generaciones de
Curvas y SuperficiesPor: José moreno
Todo este desarrollo comenzó en 1950 por ingenieros que necesitaban la representación matemática precisa de superficies de forma libre como las usadas en carrocerías de automóviles, superfices de exteriores aeroespaciales y cascos de barcos, que pudieran ser reproducidos exacta y técnicamente en cualquier momento.
INTRODUCCION
Los pioneros en estas investigaciones fueron Pierre Bézier quien trabajaba como ingeniero en Renault, y Paul de Casteljau quien trabajaba en Citroën, ambos en Francia.
Bézier y Casteljau trabajaron casi en paralelo, aunque ninguno de los dos conoció el trabajo que el otro desarrollaba.
INTRODUCCION
Dado que el trabajo de Bezier fue publicado primero y por esta razón tradicionalmente se le ha asociado a las splines - que son representadas con puntos de control describiendo a la curva misma - como Bézier splines, mientras que el nombre de Casteljau solo es conocido por los algoritmos que desarrollo para la evaluación de superficies paramétricas.
INTRODUCCION
Es una curva definida en porciones mediante polinomios.
Se utilizan para aproximar formas complicadas.
La mayoría son utilizadas en graficas de 3D.
Pero se pueden dibujar en 2D, en cuatro o más dimensiones.
SPLINES
Se denomina interpolación a la construcción de nuevos puntos, partiendo del conocimiento de que existe un conjunto discreto de puntos.
La interpolación es el arte de aproximar valores intermedios desde un conjunto de una data incompleta.
INTERPOLACION
Un ejemplo sencillo; supongamos que queremos encontrar el punto medio de dos puntos en el plano cartesiano, A (4,-2,10) y B (12, 14,6) sabemos que en algebra (x1 + x2)/2 = al punto medio, o sea el punto medio de A y B es (8, 6,8).
Esto puede representarse como
INTERPOLACION
El factor 1/2 fue aplicado a los dos componentes A y B, vamos a encontrar el punto 1/4 para la línea desde A a B donde hay mas A que B. La combinación seria:
Esto es fácil de justificar porque la diferencia de A y B es el vector de A a B
INTERPOLACION
Entonces una cuarta parte de la diferencia es (2,4,-1), así que el punto requerido es
Por lo tanto utilizaremos los puntos A y B para la posición de los vectores de los puntos A y B y los puntos entre ellos.
Consideremos como caso general lo siguiente: supongamos que queremos encontrar un punto P en algún lugar entre A y B
INTERPOLACION
Donde P(u) es el punto fraccional de (u) entre A y B cuando (u) es un numero entre 0 y 1.
Cuando (u) cambia de 0 a 1, el punto P(u) se mueve a un ritmo constante de A hacia B.
Esto indica que (u) utiliza un tiempo (t). Esta forma de interpolación la llamamos
interpolación lineal. El punto P(u) se va a mover en línea recta, pero el movimiento es uniforme según el cambio en (u).
INTERPOLACION
La formula para P(u) se puede escribir:
Donde, Las funciones lineales no contienen
radicales o potencias mayores en (u). Estas son conocidas como funciones de
mezclas, de la sumatoria de A y B obtenemos los resultados P(u), independientemente del valor de (u).
INTERPOLACION
También ; Si las masas de están en el lugar de A y B respectivamente entonces la posición de P(u) es el centro de la masa.
P(0) P(0.2) P(0.4) P(0.6) P(0.8) P(1)
A Q(0.2 ) Q(0.4) Q(0.6) Q(0.8) Q(1) B
considere donde
También esta entre A y B, no es lineal, se utiliza cuando (u) es muy pequeño y para funciones que envuelven radicales.
Este proceso se puede extender para crear curvas suaves, estas curvas son controladas por unos puntos de control en secuencias.
Nosotros nos vamos a concentrar en las curvas cubicas de Bézier, que son general -mente las más utilizadas.
Las funciones de mezclas envuelven términos cúbicos y esta definida en términos de cuatro puntos de control: P0, P1,P2 y P3
BEZIER SPLINES “ DIBUJO DE CURVAS”
Puntos de control:(P)Primera
interpolación:(P’)
P1’ (u) P2
P1 P2’(u)
P0’(u) P3
P0
BEZIER SPLINES “DIBUJOS DE CURVAS”
Puntos, segunda interpolación: (P’’)
Puntos, tercera interpolación:(P’’’)
P1’’(u)
P0’’’(u) P0’’(u)
BEZIER SPLINES “DIBUJOS DE CURVAS”
Curva Lineal Interpolación
Segmentaria Lineal: P(x) = ax + b
Por ejemplo cuando t=0.25, B(t) es un cuarto de la dirección de P0 a P1. Y t varia de 0 a 1, B(t) describe la línea de la curva P0 a P1.
BEZIER SPLINES “DIBUJOS DE CURVAS”
Curva cuadrática Interpolación Segmentaria Cuadrática:
P(x) = ax² + bx + c Para la curva cuadrática de Bézier se puede
construir un punto intermedio Q0 y Q1 de tal modo que t varié de 0 a 1:
BEZIER SPLINES “DIBUJOS DE CURVAS”
El punto Q0 varía desde P0 hasta P1 y describe la curva linear de Bézier.
El punto Q1 varía desde P1 hasta P2 y describe la curva linear de Bézier.
El punto B(t) varía desde Q0 hasta Q1 y describe la curva cuadrática de Bézier.
BEZIER SPLINES “DIBUJOS DE CURVAS”
Curva cubica Para una curva
cubica podemos construir puntos intermedios Q0, Q1 & Q2 que describan la curva lineal de Bézier , y los puntos R0 & R1 que describen la curva cuadrática:
BEZIER SPLINES “DIBUJOS DE CURVAS”
Curvas de cuarto orden
Para las curvas de cuarto orden podemos construir una donde, Q0, Q1, Q2 & Q3 describen la curva linear, los puntos R0, R1 & R2 describen la curva cuadrática, y los puntos S0 & S1 describen la curva cubica.
BEZIER SPLINES “DIBUJOS DE CURVAS”
Para crear animaciones convincentes necesitamos crear continuidad en el tiempo.
Un objeto animado para que simule un movimiento natural, es importante que la velocidad no tenga saltos, sino que las curvas tengan continuidad.
Consideremos dos curvas, con u representando el tiempo; la velocidad del punto en la primera curva es y la velocidad en la segunda es donde
Control de animación mediante curvas Bézier cúbicos
Donde, es el segmento desde a y es el segmento desde a . Para obtener continuidad y velocidad constante,
el punto de transferencia de una curva a la próxima, y tienen que coincidir y los segmentos de las líneas y tienen que tener la misma medida y la misma dirección, la segunda curva
Control de animación mediante curvas Bézier cúbicos
comienza en los parámetros;donde, para la primera curva. es el cambio de 0 – 1 para la curva (P) es el cambio de 0 – 1 para la curva (Q)Para obtener el tiempo de un objeto que pasa
por un punto a un tiempo definido.Por definición:
Control de animación mediante curvas Bézier cúbicos
Para la velocidad en que el objeto llega a Esta velocidad tiene que ser igual para P y Q Por definición:
Las medidas también tienen que ser iguales. Por definición:
Control de animación mediante curvas Bézier cúbicos
Excelente herramienta para generar y controlar curvas en el espacio.
Nos permite crear un sistema interactivo para los cambios de posición de los puntos de control y poder ver los efectos de las curvas.
Para esto se utilizan las tangentes de la curva, las tangentes definen la dirección de la curva y la medida de esta.
INTERPOLACION “SPLINE” PARA GENERAR CURVAS
Para determinar exactamente los puntos de control cuando la curva pasa atreves de ellos, utilizamos la formula de tangente que esta dada: , los valores constantes positivos para i = 1 y para n – 1.
INTERPOLACION “SPLINE” PARA GENERAR CURVAS
INTERPOLACION “SPLINE” PARA GENERAR CURVAS
B - SPLINES El término B-spline se refiere con frecuencia
a una curva spline paramétrica por funciones spline que se expresan como combinaciones lineales de B-splines .
Una B-spline es simplemente una generalización de una curva de Bézier, que puede ser evaluada de una manera estable sin necesidad de aumentar el grado de la B-spline.
Es el caso más general de Bézier.
Las curvas de Bézier son un tipo de B-Splines.
Ventaja sobre Bézier: los puntos de control no se alejan tanto de la forma que queremos modelar, por lo que podemos asemejarnos más al modelo sin necesidad de utilizar muchos puntos de control.
B-SPLINES
Dado m valores reales ti, llamados nudos,
con Una B-spline de grado n es una curva
paramétrica
Compuesta por una combinación lineal de B-splines básicas bi,n de grado n
B - SPLINES
B-SPLINES
Los Nurbs son muy populares en las graficas de computadoras y en los sistemas CAD.
Son más complicados de evaluar y de entender que los Bézier y B-Splines, pero te proveen una representación exacta de los círculos, figuras cónicas, elipses, parábolas e hipérbolas.
Una curva NURBS se define mediante cuatro elementos: grados, puntos de control, nodos y regla de cálculo.
NURBS = Non Uniform Rational B-Splines
Un grado es un número entero positivo. Este número normalmente es 1, 2, 3 o 5 pero
puede ser cualquier número entero positivo. Las líneas y polilíneas NURBS son grado 1, los círculos son grado 2 y la mayoría de las formas libres son grado 3 o 5.
Los puntos de control son una lista de puntos de grado+1 como mínimo. Una de las maneras más sencillas de cambiar la forma de una curva NURBS es mover los puntos de control
NURBS = Non Uniform Rational B-Splines
Los nodos son una lista de números de grado+N-1, donde N es el número de puntos de control. A veces esta lista de números se denomina vector nodal.
En este contexto, la palabra vector no significa una dirección 3D.
NURBS pueden representar con precisión objetos geométricos estándar tales como líneas, círculos, elipses y esferas, así como formas geométricas libres como carrocerías de coches y cuerpos humanos
NURBS = Non Uniform Rational B-Splines
Los B-Splines y las curvas de Bézier son casos particulares de NURBS.
No son simples polinomios, sino cocientes de polinomios.
NURBS = Non Uniform Rational B-Splines
Una superficie de producto tensorial es la superficie obtenida al mover cada uno de los puntos de control de una curva del tipo
P(t)=i bi Ni(t) a lo largo de otra curva de expresión similar.
La superficie viene controlada por una malla rectangular.
Las superficies de Bézier de producto tensorial que se llaman parches de Bezier ó Bezier “patches”.
SUPERFICIES
Los puntos {bij / i=0…m, j=0…n} son los puntos de control de la superficie, y forman la malla de control
Ejemplo: puntos de control
malla de control
SUPERFICIES “Parches de Bezier”
El circulo y otras figuras conicas Los nurbs tienen la habilidad de darnos
exactamente la representación de círculos, elipses, parábolas e hipérbolas.
Los arcos y los círculos son creados con dos poderosos nurbs y tres puntos de control.
Se emplean siete nodos que al multiplicarlos por tres al final de los nodos, se mantiene el balance en el punto final y las tangentes de control. La secuencia de balance de nodos es {0,0,0,0.5,1,1,1}
Con los puntos de control P0, P1, P2 organizados, entonces P0P1 = P1 P2 = a y
b = P0P2 /2, el arco menor entre P0 y P2, donde
P0P1 y P2P1 son tangentes que se encuentran dentro del casco convexo de P0, P1, P2 esta dada por la potencia 2 (cuadrática) Nurbs con un peso de w0 = 1 para P0 y w1 = b/a para P1 y w2 = 1 para P2. P1,b/a
a P0, 1 P2, 1
b
El circulo y otras figuras conicas
Para construir una circunferencia, los puntos de control son ,…, = . El grado k=2. Se necesitan los nodos [ ,x1,…, ]=[ ,…, ]. Entonces,
= = =0, = = =1 La curva se dibuja en 3 tiempos iguales así que
habrá nodos interiores 1/3, 2/3. La curva pasa por y en esos tiempos. Por el algoritmo de De Boor, son nodos que aparecen 2 veces cada uno, es decir,
= =1/3, = =2/3.
El circulo y otras figuras cónicas
El circulo y otras figuras cónicasHélice cónica Esfera