Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Trabajo presentado como requisito parcial para optar al ttulo de Magster en Matem ticas a
Resumen
Se estudian supercies regladas y se abordan sus elementos b sicos como la linea a de estriccion y el par metro de distribucion. Se estudian algoritmos para el diseno a de supercies desarrollables, a saber el algoritmo de Aumann y el algoritmo proyec tivo de Pottmann, en este ultimo las supercies desarrollables racionales de B zier se e 3 ) . Se estudia de manera interpretan como curvas en el espacio proyectivo dual (P exhaustiva el problema de diseno de supercies desarrollables de grado polinomial 3; cuando la curva base es una curva de B zier cubica no plana y la generatriz es e cuadr tica. Las t cnicas estudiadas se implementan en el diseno de supercies desaa e rrollables a lo largo de curvas B-spline cubicas.
Agradecimientos
Deseo expresar los m s sinceros agradecimientos: a A mi esposa Claudia, por su incondicional apoyo y comprensi n en todo momento. o A mis padres, a los cuales les debo todo. Al profesor Marco, por todo su tiempo, energa y colaboraci n brindadas. o A los profesores Marianela Lentini y Edgar Ramos por el tiempo empleado en la revisi n de o este trabajo.
II
Indice general
Introduccion 1. Preliminares 1.1. El espacio afn . . . . . . . . . . . . . . . . . . . 1.2. Nociones b sicas sobre curvas . . . . . . . . . . a 1.3. Curvas de B zier y curvas b-spline . . . . . . . e 1.3.1. Forma polar . . . . . . . . . . . . . . . . 1.3.2. Curvas B-spline de grado 3 . . . . . . . 1.4. El espacio proyectivo . . . . . . . . . . . . . . . 1.4.1. Coordenadas homog neas y anes . . . e 1.4.2. Rectas y planos en espacios proyectivos 1.4.3. Dualidad en espacios proyectivos . . . 2. Familias param tricas de rectas e 2.1. Supercies regladas . . . . . . . . 2.1.1. Linea de estriccion . . . . 2.1.2. Par metro de distribucion a 2.2. Supercies desarrollables . . . .
IV
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
1 1 4 6 10 12 16 16 17 19 21 21 24 25 27 32 32 33 47 49 49 50 56
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
3. Diseno de supercies desarrollables 3.1. Algoritmo de Aumann . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2. Construccion de supercies desarrollables sobre cubicas de B zier . . . e 3.2.1. Diseno de supercies desarrollables sobre curvas B-spline cubicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.3. Supercies desarrollables va dualidad con curvas en (P3 ) . . . . . . . 3.3.1. Curvas de B zier en espacios proyectivos . . . . . . . . . . . . . e 3.3.2. Algoritmo proyectivo . . . . . . . . . . . . . . . . . . . . . . . . Bibliografa
III
Introduccion
En este trabajo se estudia el diseno de supercies desarrollables sobre curvas polinomicas y en especial para curvas polinomicas de grado 3, para tal estudio consideramos dichas curvas representadas en la base de polinomios de Bernstein; polinomios que surgen naturalmente al estudiar la geometra afn de Rn . Adem s consi a deramos curvas B-spline de grado 3. Previo a esto ofrecemos nociones b sicas sobre a geometra afn, geometra proyectiva y curvas de B zier. Las nociones de geometra e proyectiva se presentan con el n de abordar el algoritmo proyectivo para disenar supercies desarrollables racionales dado por H. Pottmann y G. Farin en [8]. El marco teorico de este trabajo se desarrolla en el captulo 2, en el cual se ofre cen con detalle las herramientas b sicas para el estudio de las supercies regladas y a desarrollables. A continuacion ofrecemos un resumen de este captulo. Una supercie reglada es una supercie que est conformada por rectas llamadas a reglas o generadores, de lo cual se sigue que dado cualquier punto de la supercie reglada, existe una recta que pasa por dicho punto y dicha recta est totalmente cona tenida en la supercie. Usualmente, una supercie reglada se expresa por medio de una curva base llamada directriz y un vector sobre cada punto de la curva base, este vector es el que otorga la direccion al generador en dicho punto. El cilindro y el cono son ejemplos de supercies regladas, otro ejemplo es el hiperboloide de una hoja. Todos los generadores de un cilindro son rectas paralelas y todos los generadores de un cono tienen un punto en comun, a saber; el v rtice del cono. La diferencia fundae mental entre el cilindro y el hiperboloide de una hoja es el comportamiento del plano tangente a lo largo de un generador; en el caso del cilindro el plano tangente a lo largo de un generador es siempre el mismo, esto no se cumple para el hiperboloide de una hoja. Para cualquier supercie reglada no cilndrica se puede denir una curva sobre la supercie llamada lnea de estriccion, esta curva es de gran importancia, debi do a la siguiente propiedad: Si una supercie reglada tiene singularidades, estas se
IV
encuentran sobre su lnea de estriccion. Una clase importante de las supercies regladas lo constituyen las supercies desarrollables. Una supercie es desarrollable si el plano tangente a lo largo de cada uno de sus generadores es el mismo. En este sentido el cilindro y el cono son supercies desarrollables pero el hiperboloide de una hoja no lo es. Otro ejemplo muy importante de supercie desarrollable son las supercies regladas que se obtienen tomando como generador el vector tangente a la curva base, estas supercies se llaman supercies tangentes. Por medio de un pegado suave entre generadores de supercies desarrollables (i.e., haciendo que los planos tangentes sobre los generadores coincidan) es posible obtener de nuevo una supercie desarrollable. En general las supercies desarrolla bles son de gran inter s en aplicaciones de diseno geom trico, debido a que se puee e den aplicar sobre una region plana de forma isom trica; es decir, sin deformacion e m trica i.e., sin alterar distancias entre puntos. e
Captulo 1 Preliminares
En este captulo se enunciar n algunas deniciones y resultados b sicos sobre a a geometra afn, teora b sica de curvas, curvas de B zier, curvas B-spline y geometra a e proyectiva, los cuales ser n necesarios para el estudio sobre supercies desarrollaa bles realizado en este trabajo.
1.1.
El espacio afn
Para los propositos del diseno geom trico, es conveniente expresar ciertos lugae res geom tricos (conjuntos de puntos del espacio eucldeo), en t rminos de la geoe e metra afn. Consideramos el conjunto de n-tuplas de numeros reales Rn con la es tructura de espacio vectorial usual y a la vez como un espacio afn, para esto hacemos n. una distincion entre vectores y puntos en R Cuando se habla de la estructura afn de Rn , se hace referencia a este como un conjunto de puntos, el cual no cuenta con puntos privilegiados (como el origen de Rn , visto como espacio vectorial) y cada par de puntos determina una direccion n visto como espacio vectorial). Las propiedades y subestructu(un elemento de R ras (subespacios) de inter s, son aquellas que son invariantes bajo transformaciones e lineales compuestas con traslaciones. Daremos a continuacion la denicion general de espacio afn. Denicion 1.1.1. Sea A un conjunto (sus elementos se llamar n puntos) y sea V un a espacio vectorial sobre un campo K, se dice que A es un espacio afn con direcciones en el espacio vectorial V si existe una funcion : A A V, con (a, b) = v, que verica lo siguiente:
I.
La dimension de A es por denicion la dimension de V. Ejemplo 1.1.1. En este ejemplo veremos la estructura afn que posee el conjunto for mado por las rectas del plano que no pasan por el origen. Consideremos A = l R2 : l es una recta que no pasa por el origen .
Cada punto (aunque en realidad es una recta ) l A puede representarse (de manera unica) por medio de una ecuacion de la forma ax + by + 1 = 0, con a y b en R2 , as dados dos puntos l1 y l2 en A, estos tienen representaciones unicas a1 x + b1 y + 1 = 0 y a2 x + b2 y + 1 = 0 respectivamente, denimos entonces : A R2 como (l1 , l2 ) = ( a2 a1 , b2 b1 ). La funcion denida satisface las tres condiciones de la denicion de espacio afn. Denotamos por An al espacio afn cuyos puntos son n-tuplas de numeros reales n . La estructura afn queda introducida por con direcciones en el espacio vectorial R n An Rn con (a, b) = b a. Esta denicion medio de la aplicacion : A permite hacer una distincion entre lo que vamos a llamar puntos (denotados por n y lo que vamos a llamar vectores (denotados por a, b, c, etc.) en Rn . a, b, c, etc.) en A Es importante tener en cuenta que dado un vector v existen innitas parejas de puntos a y b tales que b a = v, pues basta considerar los puntos a + w y b + w, para cualquier vector w, con estos nuevos puntos tambi n se sigue que (b + w) e (a + w) = v. A continuacion veremos parte del algebra permitida en el espacio afn n. A Denicion 1.1.2. Sean b0 , b1 , . . . , bk puntos en An , un punto b que pueda ser escrito de la forma
b=
i =0
i bi ,
(1.1)
la cual expresa al punto b como la suma del punto b0 mas una combinacion lineal de los vectores b1 b0 , b2 b0 , . . . , bk b0 .
Denicion 1.1.3. Un conjunto de puntos {b0 , b1 , . . . , bk } de An se dice que es an mente independiente si el conjunto de vectores {b1 b0 , b2 b0 , . . . , bk b0 } de Rn es linealmente independiente. Denicion 1.1.4. Sea a un punto en An y {v1 , v2 , . . . , vn } un conjunto linealmente independiente de Rn , el conjunto {a, v1 , v2 , . . . , vn } se llama sistema de referencia para An . En t rminos de la denicion anterior y de resultados b sicos del algebra lineal, se e a tiene que, dado cualquier punto b en An existen numeros reales (unicos) 1 , 2 , . . . , n tales que b = a + 1 v1 + 2 v2 + . . . + n v n . Los escalares i se denominan coordenadas anes respecto al sistema {a, v1 , v2 , . . . , vn }. Equivalentemente se tiene el siguiente resultado: Dado un conjunto B = {b0 , b1 , . . . , bn } anmente independiente en An y un punto b de An existen n escalares (unicos) 0 , 1 , . . . , n con i=0 i = 1 tales que
b=
i =0
i bi ,
en este caso los numeros i se llaman las coordenadas baricntricas de b respecto a B. e Un caso especial a considerar es cuando ocurre que i 0 para i = 0, 1 . . . , n, en tal caso el punto b pertenece a la c psula convexa (convex hull) generada por B la cual se a dene como hull( B) =
i =0
i bi :
i =0
i = 1
y i 0 para i = 0, 1, . . . , n
En un espacio vectorial las propiedades de mayor inter s son aquellas que son e invariantes por aplicaciones lineales; en un espacio afn se estudian las propiedades que son invariantes anes, es decir las propiedades que son invariantes bajo aplicaciones anes. Denicion 1.1.5. Una aplicaci n afn es una funcion f : An Am que enva combi o naciones anes en combinaciones anes, es decir, para cualquier par de puntos x e y en An y todo en R se da que f ((1 )x + y) = (1 ) f (x) + f (y). De la denicion anterior se sigue lo siguiente: Si f : An Am es una aplica cion afn; b0 , b1 , . . . , bk puntos en An y si los escalares 0 , 1 , . . . , k cumplen que k i=0 i = 1 entonces f
i =0
i bi
i =0
i f ( bi ) .
Una caracterizacion muy util que tienen las aplicaciones anes, es la siguiente: n Am es una aplicacion afn, entonces, una vez jados sistemas anes para Si f : A n y Rm existe una matriz A de tamano m n y un vector v Rm tal que R f (x) = Ax + v. Lo anterior muestra que una aplicacion afn est compuesta por una aplicacion lineal a y una traslacion.
1.2.
Para el objetivo del diseno con curvas y supercies es conveniente tratar estas de una manera ligeramente distinta a como se manejan con las herramientas cl sicas de a la geometra diferencial. Denicion 1.2.1. Sea p : [ a, b] An una funcion. Decimos que p es diferenciable en un punto t de ( a, b) si existe
h 0
lm
p( t + h ) p( t )
Cuando t es un extremo del intervalo se toma el lmite lateral. Denimos la derivada p(t+h)p(t) de p en t como el vector p (t) = lmh0 . Decimos que la funcion p es de h r en [ a, b ] si existe la r esima derivada p(r ) ( t ), para todo t [ a, b ]. clase C Notemos que en la denicion anterior las derivadas (de cualquier orden) son funciones vectoriales denidas en [ a, b] sobre el espacio vectorial Rn . Denicion 1.2.2. Sea p : [ a, b] An de clase Cr en [ a, b]. Denimos una curva pa rametrizada de clase Cr como el conjunto de puntos {p(t)/t [ a, b]}. La funcion n se llama una parametrizaci n de la curva. Por simplicidad denotarep : [ a, b] A o mos a la curva simplemente por p. Si un punto sobre la curva p en t tiene coordenadas p(t) = ( x1 (t), x2 (t), . . . , xn (t)) entonces su derivada en dicho punto viene dada por el vector
p ( t ) = x1 ( t ), x2 ( t ), . . . , x n ( t ) .
Veamos ahora algunos elementos b sicos sobre curvas en A3 . Sea p una curva a 3 denida sobre un intervalo [ a, b ]. parametrizada contenida en A El vector tangente unitario a la curva p en el punto p(t) se dene como T(t) =
p (t) . p (t)
Otro vector importante asociado a la curva es el vector normal principal N(t), el cual es ortogonal a T(t). N(t) apunta en la direccion en la cual est cambiando la curva, a este se puede calcular con la formula N(t) = T (t) . T (t)
Un tercer vector importante asociado a la curva en el punto p(t) es el vector binormal B(t), el cual es ortogonal a T(t) y N(t) y se calcula mediante el producto vectorial. B ( t ) = T ( t ) N ( t ). El conjunto de estos tres vectores, {T(t), N(t), B(t)} es conocido como el triedro de Frenet. Este conjunto forma una base ortonormal para cada punto p(t) (donde T(t) y N(t) existan y sean no paralelos).
T(t) B(t)
N(t)
Figura 1.1: Triedro de Frenet. El plano que pasa por p(t) y es generado por los vectores T(t) y N(t) se conoce como plano osculador en p(t), as, un punto q sobre este plano se escribe como q = p(t) + T(t) + N(t), donde y son escalares reales. El plano osculador en p(t) se expresa implcitamente como el conjunto formado por los puntos x en A3 que satisfacen la ecuacion (x p(t)) B(t) = 0. El plano que pasa por p(t) y es ortogonal al vector normal principal N(t) se conoce como plano recticante, as este queda denido como el conjunto de puntos x 3 que satisfacen la ecuacion de A
(x p(t)) N(t) = 0.
Ya que el plano recticante es normal a N(t) entonces este se puede generar con T(t) y B(t), de lo cual se desprende que los puntos x del plano recticante se pueden escribir como x = p(t) + T(t) + B(t), donde y son escalares reales.
P la
no
rec tifi
can t
T(t)
P la
B(t)
no
osc u la
do
N(t)
Figura 1.2: Planos osculador y recticante en p(t). En la teora b sica de curvas se tienen adem s dos cantidades escalares que de a a terminan (salvo traslacion y rotacion) de manera local a la curva en cada punto p(t), estas son la curvatura (t) y la torsi n (t) o
p (t) p (t) p (t) 3 (p (t) p (t)) p (t) (t) = . p (t) p (t) 2
(t) =
(1.2) (1.3)
La curvatura puede interpretarse como la medida de que tan lejos est la curva de a ser una linea recta. Sobre el plano osculador se puede construir un crculo que toca a la curva de tal forma que la primera y segunda derivada del crculo y la curva en el punto p(t) coinciden. Este crculo llamado crculo osculador, tiene la propiedad de que su radio (t) es (t) = 1/ (t) y tiene su centro ubicado sobre la recta del plano osculador que tiene direccion N(t). As, podramos pensar, que la curvatura se hace mas grande a medida que el crculo osculador se hace mas pequeno y de esta forma la curva tendera a verse mas cerrada. Por otra parte, la torsion se puede ver como la medida de que tan lejos est la a curva de ser una curva plana (es decir, que esta est contenida en un plano). En otras e palabras, la torsion mide la variacion del plano osculador a lo largo de la curva. Se tiene entonces, que una curva con torsion nula, (t) 0, tiene plano osculador constante a lo largo de esta.
1.3.
El algoritmo de de Casteljau es una herramienta b sica empleada en el diseno a n se obtienen los geom trico, en el cual, dados un conjunto de m + 1 puntos en A e
puntos de una curva polinomica interpolante de grado menor o igual que m. Algoritmo de de Casteljau. Sean b0 , b1 , bm puntos en An el algoritmo est daa do por la siguiente recursion:
b0 ( t ) = b i i bi ( t ) = ( 1 t ) bi
j j 1
( t ) + t bi + 1 ( t ) ,
j 1
con j = 0, . . . , m; i = 0, . . . , m j. (1.4)
Para jar ideas se ilustra el caso m = 3, para el cual el algoritmo se representa con el siguiente diagrama:
b0
1 t
b1
Q Q s t b1 (t) 0
1 t
b2
Q s Q t b1 (t) 1
1 t
Q 1 t Q Q Q s tb2 (t)
0
b3
t -
Q s Q
b1 (t) 2
b2
b1 2
b2 1 b1 1 b3
b1 b2 0
b3 = b(t) 0
b1 0 b0
Tomando el polgono de cuatro lados con v rtices b0 , b1 , b2 y b3 (Figura 1.3) , se to e 1 , b1 y b1 dados por el algoritmo, luego sobre el polgono man sobre este los puntos b0 1 2 2 y b2 como aparece en el diadeterminado por estos tres puntos nuevos, se toman b0 1 grama, nalmente en el segmento determinado por estos dos puntos se toma b3 0 como el punto sobre la curva para el valor t [0, 1]. Se dene entonces b(t) como b(t) = b3 (t) y la formula explcita para b(t) es 0
b(t) = (1 t)3 b0 + 3t(1 t)2 b1 + 3t2 (1 t)b2 + t3 b3 .
Notemos que b(t) es una combinacion afn de los puntos b0 , b1 , b2 y b3 , ya que 3 + 3t (1 t )2 + 3t2 (1 t ) + t3 1. (1 t ) En general, al aplicar el algoritmo de de Casteljau a los m + 1 puntos, b0 , b1 , bm se obtiene una curva polinomial de grado m en An , parametrizada por
b( t ) =
i =0
m i t ( 1 t ) m i bi i
con t [0, 1]. Las curvas obtenidas por medio del algoritmo de de Casteljau se conocen como curvas de Bzier. Usualmente se denotan por e
b( t ) =
i =0
Bim (t)bi
(1.5)
m i t (1 t ) m i , i
para i = 0, 1, . . . , m. Los puntos b0 , b1 , . . . , bm son llamados puntos de control o puntos de Bzier y los polinomios Bim (t) se conocen como los polinomios de Bernstein de grado e m. Antes de iniciar el estudio b sico sobre curvas de B zier es necesario mencionar a e m algunas de las propiedades m s importantes del conjunto de polinomios { Bim (t)}i=0 . a
m 1. { Bim (t)}i=0 es un conjunto linealmente independiente en el espacio vectorial real de polinomios de grado menor o igual que m en la variable t, denotado por Pm [t].
i =0
Bim (t),
3. Calculemos la derivada a Bim (t) dBim (t) = dt m d ( t i (1 t ) m i ) dt i m = (iti1 (1 t)mi (m i )ti (1 t)mi1 ) i m i 1 m i = m t ( 1 t ) m 1 i t ( 1 t ) m 1 i i i
Veamos ahora algunas de las propiedades de las curvas de B zier, las cuales ser n e a m m ( t )b en An . usadas en este trabajo. Consideremos la curva de B zier b(t) = i=0 Bi e i 1. Es claro que b(0) = b0 y que b(1) = bm , lo cual exhibe la propiedad interpolante que tiene una curva de B zier sobre sus puntos de control, en los extree mos.
10
db( t ) dt m dBm ( t ) = i bi dt i =0
= =
i =0 m
i =0 m 1
mBim1 (t)(bi+1 bi )
i =0
= m
Bim1 (t)(bi+1 bi )
b (t) = m
i =0
Bim1 (t)bi .
b (t) m
Las diferencias bi son vectores de Rn , se tiene que de grado m 1 y sus puntos de control son bi .
3. Los vectores tangentes a la curva en t = 0 y en t = 1 vienen dados por b (0) = mb0 y b (1) = mbm1 .
y que la funcion sea sim trica signica, que para toda permutacion de {1, 2, . . . , m} e se da que p ( t (1) , t (2) , . . . , t ( m ) ) = p ( t 1 , t 2 , . . . , t m ) . Este polinomio p(t1 , t2 , . . . , tm ) es comunmente conocido como la forma polar o blossom asociado a la curva b. La principal caracterstica la forma polar es que sobre la diagonal, es decir, cuando t1 = t2 = . . . = tm = t se tiene que
p(t, t, . . . , t) = b(t).
11
. . .
p(1, 1, . . . , 1, 1) = bm .
Dados los puntos de B zier b0 , b1 , . . . , bm existe un algoritmo que permite calcue lar la forma polar asociada a la curva de B zier determinada por los puntos dados. e Este algoritmo se conoce como el Algoritmo de de Casteljau Generalizado. Algoritmo de de Casteljau Generalizado. Sean b0 , b1 , bm puntos en An el algoritmo est dado por la siguiente recursion: a
b1 (t1 ) = (1 t1 )bi + t1 bi+1 i bi ( t 1 , . . . , t j ) = ( 1 t j ) bi
j j 1 j 1
( t 1 , . . . , t j 1 ) + t j bi + 1 ( t 1 , . . . , t j 1 ) ,
HH
t1
b1
HH
HH
t1
1 t1
H j - b1 ( t ) 0 1 H j - b1 ( t ) 1 1
HH 1t2 HH H j
t2
b2
HH
HH
t1
1 t1
b3
HH j - b1 ( t ) 2 1
HH 1t2 HH j H
t2
- b2 ( t , t ) 0 1 2
HH 1t3 HH H j t3 - b2 ( t , t ) - b3 ( t , t , t ) 0 1 2 3 1 1 2
12
1.3.2.
Una curva B-spline de grado 3 es una curva polinomial por trozos y cada trozo es una curva de B zier de grado 3. La curva B-spline es de clase C2 , o sea, las derivadas e por la izquierda y por la derecha en el punto comun de trozos adyacentes coinciden. (Figura 1.4).
Para denir una curva B-Spline de grado 3 y k pedazos se necesita: 1. k + 5 numeros reales x2 , x1 , x0 , x1 , . . . , xk , xk+1 , xk+2 , llamados nodos. 2. k + 3 puntos p0 , p1 , . . . , pk+2 en An . Estos puntos son llamados puntos de de Boor. Iniciamos la construccion deniendo k formas polares de grado 3, pi con i = i esta denida por los puntos p 1, 2 . . . , k, tal que cada p i 1 , pi , pi +1 y pi +2 . Cada forma polar pi debe cumplir
pi ( x i 3 , x i 2 , x i 1 ) = pi 1 pi ( x i 2 , x i 1 , x i ) = pi pi ( x i 1 , x i , x i + 1 ) = pi + 1 pi ( x i , x i + 1 , x i + 2 ) = pi + 2 .
Con esta asignacion de puntos que se da para cada forma polar pi es suciente pa ra obtener las expresiones generales pi (t1 , t2 , t3 ) como una combinacion afn de los puntos pi1 , pi , pi+1 y pi+2 , este hecho se desprende de la multianidad y la simetra
13
de cada forma polar. Para obtener dicha expresion nos basamos en el siguiente diagrama:
pi ( x i 3 , x i 2 , x i 1 )
H Y H
x HH i3 H HH
xi pi ( x i 2 , x i 1 , x i )
pi ( x i 2 , x i 1 , t 3 )
H Y H
x HH i2 HH H xi
H Y H
x HH i2 HH H x i +1
pi ( x i 1 , x i , x i + 1 )
H Y H
pi ( x i 1 , x i , t 3 )
H Y H
pi ( x i 1 , t 2 , t 3 )
Y H HH xi1 HH HH
xi
x HH i1 HH H x i +2
x HH i1 HH H x i +1
pi ( x i , x i + 1 , x i + 2 )
pi ( x i , x i + 1 , t 3 )
pi ( x i , t 2 , t 3 )
pi ( t 1 , t 2 , t 3 )
Para jar ideas mostramos solo el primer paso (mirando el diagrama de derecha a izquierda). Se escribe a t1 como una combinacion afn de xi1 y xi , con lo cual se tiene t1 = t x i 1 xi t1 x i 1 + 1 x, x i x i 1 x i x i 1 i
xi t1 t x i 1 x i 1 + 1 x , t2 , t3 x i x i 1 x i x i 1 i t 1 x i 1 i xi t1 i p ( x i 1 , t 2 , t 3 ) + p ( x i , t2 , t3 ). = x i x i 1 x i x i 1
As, siguiendo el diagrama usando la idea mostrada en el primer paso, se obtiene que la formula explcita para pi es
i i i i pi ( t 1 , t 2 , t 3 ) = q 0 ( t 1 , t 2 , t 3 ) pi 1 + q 1 ( t 1 , t 2 , t 3 ) pi + q 2 ( t 1 , t 2 , t 3 ) pi + 1 + q 3 ( t 1 , t 2 , t 3 ) pi + 2
donde
( xi t3 )( xi t2 )( xi t1 ) ( xi xi1 )( xi xi2 )( xi xi3 ) ( xi t3 )( xi t2 )(t1 xi3 ) ( xi t3 )(t2 xi2 )( xi+1 t1 ) i q1 ( t1 , t2 , t3 ) = + ( xi xi1 )( xi xi2 )( xi xi3 ) ( xi xi1 )( xi xi2 )( xi+1 xi2 ) (t3 xi1 )( xi+1 t2 )( xi+1 t1 ) + ( xi xi1 )( xi+1 xi1 )( xi+1 xi2 )
i q0 ( t1 , t2 , t3 ) =
14
( xi t3 )(t2 xi2 )(t1 xi1 ) (t3 xi1 )( xi+1 t2 )(t1 xi2 ) + ( xi xi1 )( xi xi2 )( xi+1 xi2 ) ( xi xi1 )( xi+1 xi1 )( xi+1 xi2 ) (t3 xi1 )(t2 xi1 )( xi+2 t1 ) + ( xi xi1 )( xi+1 xi1 )( xi+2 xi1 ) (t3 xi1 )(t2 xi1 )(t1 xi1 ) i q3 ( t1 , t2 , t3 ) = ( xi xi1 )( xi+1 xi1 )( xi+2 xi1 )
i q2 ( t1 , t2 , t3 ) =
Es importante notar que para i = 1, . . . , k 1, las formas polares pi y pi+1 toman los mismos valores pi , pi+1 y pi+2 , lo cual ocurre cuando se evaluan en las ternas de nodos ( xi2 , xi1 , xi ), ( xi1 , xi , xi+1 ) y ( xi , xi+1 , xi+2 ). Al tomar en la forma polar pi , para i = 1, . . . , k, los puntos
bi0 = pi ( xi1 , xi1 , xi1 ) bi1 = p ( xi1 , xi1 , xi ) bi2 = pi ( xi1 , xi , xi ) bi3 = pi ( xi , xi , xi )
i
(1.7)
son los puntos de control de la curva de B zier bi (u(t)) = pi (u(t), u(t), u(t)), donde e u : [0, 1] [ xi1 , xi ], con u(t) = (1 t) xi1 + txi , bi es una curva de B zier paramee trizada sobre el intervalo [ xi1 , xi ]. La variable u introducida es una variable sobre el intervalo [ x0 , xk ], esta se conoce como par metro global del B-spline p, el cual se a dene como p(u) = bi (u) cuando u [ xi1 , xi ]. El siguiente teorema garantiza la continuidad y la diferenciabilidad de orden 2 del B-spline sobre los nodos. Teorema 1.3.1. Para i = 1, . . . , k las curvas de Bzier bi (u) parametrizadas sobre [ xi1 , xi ] e satisfacen que 1. bi ( xi ) = bi+1 ( xi ). 2. 3.
d bi du |u= xi d 2 bi | du2 u= xi
= =
d bi + 1 du |u= xi . d 2 bi + 1 | . du2 u= xi
Demostraci n. Usando la forma polar pi se calculan los puntos de control de bi como o en (1.7) y se tiene que
15
bi0
( xi+1 xi1 )( xi1 xi2 ) ( xi xi1 )( xi1 xi3 ) ( xi xi1 )2 pi1 + + pi = ( xi xi2 )( xi xi3 ) ( xi xi2 )( xi+1 xi2 ) ( xi xi2 )( xi xi3 ) ( xi1 xi2 )2 + p ( xi xi2 )( xi+1 xi2 ) i+1 x x i 1 x i 1 x i 2 = i +1 pi + p x i +1 x i 2 x i +1 x i 2 i +1 x xi x i x i 2 = i +1 pi + p x i +1 x i 2 x i +1 x i 2 i +1 ( xi+1 xi )2 ( xi+1 xi )( xi xi2 ) ( xi+2 xi )( xi xi1 ) = p pi + + (xi+1xi1)(xi+1xi2) ( xi+1 xi1 )( xi+2 xi1 ) ( xi+1 xi1 )( xi+1 xi2 ) i+1 ( xi xi1 )2 + p . ( xi+1 xi1 )( xi+2 xi1 ) i+2
Note que bi3 = bi+1 0 , lo cual signica que bi ( xi ) = bi+1 ( xi ). Ahora, usando la regla de la cadena se obtiene la derivada de las curvas de B zier e bi (u) y bi+1 (u) en u = xi . d bi dbi dt | u = xi = | u = xi du dt du 3 (b bi2 ) = xi xi1 i3 y d bi + 1 dbi+1 dt | u = xi = | u = xi du dt du 3 (b bi+1 0 ). = xi+1 xi i+1 1
(1.8)
(1.9)
Simplicando adecuadamente las expresiones (1.8) y (1.9) se obtiene que estas coinciden, lo cual implica el resultado deseado. Para ver que las segundas derivadas coinciden en u = xi , es suciente simplicar las expresiones d 2 bi d 2 bi | u = xi = du2 dt2 dt du
2
| u = xi
=
y
d 2 bi + 1 d2 bi+1 dt 2 | u = xi = | u = xi du du2 dt2 6 = [(b bi+1 1 ) (bi+1 1 bi+1 0 )] ( xi+1 xi )2 i+1 2 vericando que estas coinciden.
16
1.4.
El espacio proyectivo
Actualmente la geometra proyectiva ocupa un papel importante en el diseno de curvas y supercies, ya que estas se pueden ver como envolventes de familias de lugares geom tricos (por ejemplo familias, de rectas, de planos, de crculos, etc.) en e 3 y estas familias pueden ser vistas como conjuntos de puntos en algun espacio R proyectivo. Por conveniencia, consideramos la denicion de espacio proyectivo con cierto nivel de generalidad Denicion 1.4.1. Dado un espacio vectorial real V de dimension n + 1, se dene la relacion de equivalencia sobre V dada por: u v si y solo si, existe 0 tal que u = v
El espacio proyectivo de dimension n basado en V se dene como el cociente Pn (V ) = (V {0})/ . En particular, denotamos el espacio proyectivo basado en el espacio vectorial simplemente por Pn . Para una interpretacion del espacio proyectivo Pn , tomemos un punto B en Pn , B resulta ser una clase de equivalencia, es decir, B = [b] para algun b Rn+1 {0}, si escogemos a b como representante de B, entonces cualquier otro representante v de B sera v = b, es decir, v es un vector sobre la recta generada por b que pasa por el origen, de lo cual se sigue que todos los representantes de B est n sobre dicha recta, a de esta forma es natural identicar o pensar en los elementos de Pn como las rectas de Rn+1 que pasan por el origen. Rn +1
17
es tambi n un vector de coordenadas homog neas para B el cual se conoce como e e vector de coordenadas anes de B. Es f cil ver que las coordenadas anes de un punto nito B no dependen de a las coordenadas homog neas tomadas, de esto se desprende que las coordenadas e anes de un punto nito son unicas. Ahora, los puntos de Rn est n unvocamente a n , basta considerar el siguiente diagrama. asociados con los puntos nitos de P Rn
i-
+1 Rn0 =1 x
- Pn
Rn +1
pn
P1
? - Pn
donde (s, t) = sa + tb, con a y b coordenadas homog neas para A y B respece tivamente, p1 (s, t) = [(s, t)], pn ( x0 , x1 , . . . , xn ) = [( x0 , x1 , . . . , xn )], ya que es una aplicacion homog nea, queda bien denida , la cual se dene como e [(s, t)] = pn ((s, t)). Se dene entonces las recta proyectiva que pasa por los puntos A y B como (P1 ). Similar a la construccion param trica de rectas proyectivas presentada anteriore mente, se puede denir un 2-plano proyectivo en Pn con n > 2, a partir de tres puntos no colineales (esto es, que no est n sobre una misma recta proyectiva) de Pn . e n no colineales y sean a, b y c coordenadas homog neas Sean A, B y C puntos de P e para estos puntos, respectivamente. Se dene la funcion : R3 Rn+1 , denida por (s, t, u) = sa + tb + uc, la cual es homog nea, luego esta se puede extender a e 2 Pn dada por [( s, t, u )] = [ ( s, t, u )]. As, = (P2 ) es el 2-plano pro : P yectivo que pasa por los puntos A, B y C. Al conjunto de coordenadas homog neas e
18
B = {a, b, c} lo llamaremos sistema de coordenadas homogneas para el plano proyece tivo . Note que cualquier terna de puntos no colineales en un plano proyectivo dene un sistema de coordenadas homog neas. e
Hiperplanos en Pn Un vector a = ( a0 , a1 , . . . , an ) en Rn+1 , dene un hiperplano en Rn+1 como el espacio vectorial n-dimensional = {( x0 , x1 , . . . , xn ) : a0 x0 + a1 x1 + . . . + an xn = 0} . Este dene, de forma natural, un hiperplano en Pn , el cual tambi n se conoce como e (n 1)-plano proyectivo en Pn , este se describe por medio de = {[( x0 , x1 , . . . , xn )] : a0 x0 + a1 x1 + . . . + an xn = 0} . En particular, con n = 3 se tiene que un 2-plano en P3 tiene ecuacion a0 x0 + a1 x1 + a2 x2 + a3 x3 = 0. Con n = 2 la ecuacion a0 x0 + a1 x1 + a2 x2 = 0, dene en P2 un 1-plano, mejor conocido como una recta proyectiva. La interseccion de dos planos 3 (lo cual siempre ocurre) determina una recta proyectiva de manera proyectivos en P implcita. Note que una recta proyectiva tiene dos deniciones: la param trica y la e 3 se representa como implcita. As, una recta proyectiva L en P L = 1 2 = donde 1 = {[( x0 , x1 , x2 , x3 )] : a0 x0 + a1 x1 + a2 x2 + a3 x3 = 0} 2 = {[( x0 , x1 , x2 , x3 )] : b0 x0 + b1 x1 + b2 x2 + b3 x3 = 0} con ( a0 , a1 , a2 , a3 ) y (b0 , b1 , b2 , b3 ) vectores no paralelos. Coordenadas en R3 para rectas de P3 Si L es una recta de P3 denida como en (1.10) esta recta puede ser representada como L = {[sa + tb] : (s, t) R2 }, donde {a, b} es una base para el conjunto solucion de las ecuaciones en (1.10). Ahora, sea B = {v1 , v2 , v3 } un sistema de coordenadas homog neas para 1 . Sea X un e punto en L, con coordenadas homog neas x = ( x0 , x1 , x2 , x3 ) R4 y sean (x)B = e ( x0 , x1 , x2 ), (a)B = ( a0 , a1 , a2 ) y (b)B = (b0 , b1 , b2 ) los vectores de coordenadas de x,
[( x0 , x1 , x2 , x3 )] :
a0 x0 + a1 x1 + a2 x2 + a3 x3 = 0 b0 x0 + b1 x1 + b2 x2 + b3 x3 = 0
(1.10)
19
a y b respecto a la base B , respectivamente. Como X L, entonces existen s y t en R tales que x = sa + tb, luego
b0 b1 . b2
(1.11)
Al eliminar las variables s y t en (1.11), se obtiene una ecuacion a x0 + b x1 + c x2 = 0, con la cual L = {[x] : ( a, b, c) (x)B = 0} . El vector ( a, b, c) se conoce como vector de coordenadas homogneas respecto a B para e la recta L. Notemos que para cualquier 0, (a, b, c) tambi n es un vector de e coordenadas homog neas para L. e
1.4.3.
Rn+1 tiene una estructura de espacio vectorial heredada de Rn+1 . Consideremos adem s la relacion de equivalencia denida sobre Rn+1 por: a f g si y solo si existe R {0} tal que f = g. Con esto, se dene el espacio proyectivo dual como
(Pn ) = (Rn +1 ) { 0} / .
Para dar una interpretacion de los elementos del espacio proyectivo dual consideremos lo siguiente: Si (Pn ) entonces = [ f ] con f Rn+1 , es natural identicar a con ker( f ), esta identicacion no depende del representante f , ya que si g es otro representante de , entonces existe R {0} tal que f = g, as ker( f ) = ker(g) = n+1 que pasa por el oriker( g). En t rminos geom tricos, ker( f ) es un n-plano en R e e gen y en Pn se ve como un (n 1)-plano proyectivo. Para nuestros intereses veamos algunas relaciones entre los objetos de P3 y (P3 ) .
20
L2 L1 L3
L3 L2 L1
(a) P2
(b) (P2 )
Figura 1.5: Rectas incidentes en P2 son puntos colineales en (P2 ) 1. Si b es un vector en R4 , es decir si b = (d, a, b, c), este puede ser un vector de coordenadas homog neas para el punto proyectivo B = [b] P3 o bien para e el plano proyectivo B = {[(w, x, y, z)] : ax + by + cz + wd = 0} P3 , el cual es un punto en (P3 ) . 2. Sea un 2-plano proyectivo contenido en P3 y sean L1 y l2 rectas contenidas en . Si B es un sistema de coordenadas homog neas para y si L1 y L2 tienen e vectores de coordenadas homog neas b1 y b2 (en R3 ) respecto a B , entonces el e punto de interseccion entre L1 y L2 tiene coordenadas homog neas b1 b2 , e 2 ) , se tiene que L y L son puntos y que b b dene dual a esto, en (P 2 2 1 1 3 ) que pasa por los puntos L y coordenadas homog neas para la recta en (P e 1 L2 . Figura 1.5.
Consideremos una curva a : [ a, b] A3 y una funcion vectorial b : [ a, b] R3 . Para t [ a, b] consideremos la recta Lt que pasa por el punto a(t) y es paralela al vector b(t). Sea S = { Lt : t I }, decimos que S es la supercie reglada generada por a y b. S es parametrizada por x : [ a, b] R S, donde
x(t, v) = a(t) + vb(t).
Las rectas Lt se denominan generadores o reglas de S. la funcion vectorial b se llama generatriz. La curva a se denomina curva base o directriz de S. Las derivadas parciales para x en (t, v) est n dadas por a
xt = a (t) + vb (t) xv = b ( t ).
Decimos que x(t, v) es una singularidad de la supercie reglada si los vectores xt y xv son paralelos, en el caso contrario decimos que el punto es un punto regular de la supercie. Si los vectores xt y xv no son paralelos, entonces el vector N(t, v) = xt xv es no nulo y este se dene como el vector normal a la supercie en el punto x(t, v). Cuando N(t, v) es no nulo, se puede construir el plano Tt,v (S) = {y A3 : (x(t, v) y) N(t, v) = 0}, 21
22
para cualquier punto y que est sobre este plano existen numeros reales y tales e que y = x(t, v) + xt + xv . El plano Tt,v (S) se dene como el plano tangente a la supercie en el punto x(t, v). Ejemplo 2.1.1. Sea S el paraboloide hiperbolico denido por la ecuacion z = kxy, k 0. Notemos que las rectas Lt parametrizadas por y = z/tk y x = t, pertenecen a S, la interseccion de cada Lt con el plano z = 0 se da en el punto (t, 0, 0) y Lt es paralela al vector (0, 1/k, t). Tomando como curva directriz a(t) = (t, 0, 0) y como vectores directores para las rectas, b(t) = (0, 1, kt); obtenemos que S es una supercie reglada parametrizada por (ver Figura 2.1(a))
x(t, v) = a(t) + vb(t)
= (t, v, kvt) .
Ejemplo 2.1.2. Sea S el hiperboloide de revolucion con ecuacion x2 + y2 z2 = 1, tomando a(t) = (cos t, sin t, 0) para t (0, 2 ) y b(t) = a (t) + e3 con e3 = (0, 0, 1). Se tiene que la funcion 1
x(t, v) = a(t) + vb(t)
tiene la propiedad que todos sus generadores tienen direccion constante. Las supercies regladas de este tipo se conocen como supercies cilndricas. Ejemplo 2.1.4. Sea a0 un punto y b : [ a, b] R3 una funcion C2 , la supercie reglada obtenida por la parametrizacion
x(t, v) = a0 + vb(t)
23
Figura 2.1: Supercies regladas. Ejemplo 2.1.5. Un tipo de supercies de gran inter s en este trabajo, son las supere cies tangentes a una curva a, estas pueden ser parametrizadas por
x(t, v) = a(t) + va (t).
Una propiedad importante de estas supercies, que veremos mas adelante, es que el plano osculador de la curva a en un punto a(t) coincide con el plano tangente a la supercie en cualquier punto del generador Lt . la curva a a la cual son tangentes todos los generadores de la supercie se llama linea de regresi n. o
(a) Cilindro
(b) Cono
24
2.1.1.
Linea de estriccion
Consideremos una supercie reglada S parametrizada por x(t, v) = a(t) + vb(t), con (t, v) [ a, b] R, con b (t) 0 para t [ a, b] . Estudiemos el comportamiento del vector normal a la supercie sobre un generador jo Lt cuando |v| . Para esto denamos N =
1 v2 1 v2
+1 +1
xt xv a (t) b(t) +
=
Ahora, cuando
v v2
+1
b ( t ) b ( t ).
v , v +,
(2.1) (2.2)
lo cual dice que el plano tangente, entre las posiciones lmite (con t jo) gira un angu lo a lo largo del generador Lt . El plano normal al vector b (t) b(t) se conoce como plano asint tico de S sobre o el generador Lt y se denota por , t = y A3 : (y a(t)) (b (t) b(t)) = 0 . t El plano tangente a S sobre el generador Lt que es perpendicular a se conoce t como plano central y se denota por C y t C = y A3 : (y a(t)) b(t) b (t) b(t) t
=0 .
Un punto sobre Lt se llama punto central o punto de estricci n si el plano tangente o a la supercie S en dicho punto coincide con el plano central C . t Denicion 2.1.1. El conjunto de puntos centrales de una supercie reglada S se de nomina linea de estricci n de S. o Para encontrar una formula que permita calcular los puntos sobre la linea de estriccion consideremos un punto central x(t, v) = a(t) + vb(t). El vector normal xt xv en el punto x(t, v) tambi n es ortogonal al plano central, luego xt xv es e ortogonal a el vector normal al plano asintotico, es decir
(xt xv ) (b (t) b(t)) = 0 (a (t) b(t) + vb (t) b(t)) (b (t) b(t)) = 0 (a (t) b(t)) (b (t) b(t)) + v b (t) b(t)
2
= 0
25
as se tiene que v=
(2.3)
Lo cual implica que los puntos centrales de S dependen solo de t y est n sobre la a curva e : [ a, b] S dada por
e( t ) = a( t )
(2.4)
Observacion 2.1.1. Es claro que una supercie reglada S con generatriz b tambi n e se puede parametrizar con
x(t, u) = e(t) + ub(t).
Veamos ahora que los puntos e(t) de la supercie son precisamente los puntos de estriccion. Consideremos la parametrizacion x(t, u) = e(t) + ub(t) donde e(t) = a(t) + v(t)b(t) con v como en (2.3). El vector normal en x(t, u) est dado por a
xt xu = a ( t ) b ( t ) + ( v ( t ) + u ) b ( t ) b ( t )
y el vector normal en e(t) = x(t, 0) es a (t) b(t) + v(t)b (t) b(t). Luego
2.1.2.
En esta seccion se da un resultado que permite identicar las singularidades que puede tener una supercie reglada, a partir de la linea de estriccion. Lema 2.1.1. Sea S una supercie reglada con generatriz b(t) y linea de estricci n e(t). La o linea de estricci n e satisface que o
26
Demostraci n. Sea v(t) como en (2.3), luego, un punto sobre la linea de estriccion se o escribe como e(t) = a(t) + v(t)b(t), de lo cual se desprende que
e (t) = a (t) + v (t)b(t) + v(t)b (t) e (t) b(t) = a (t) b(t) + v(t)b (t) b(t)
(e (t) b(t)) (b (t) b(t)) = (a (t) b(t)) (b (t) b(t)) + v(t) b (t) b(t)
nalmente, con v(t) como en (2.3) se tiene que (e (t) b(t)) (b (t) b(t)) = 0. Proposicion 2.1.2. Sea S una supercie reglada no cilndrica parametrizada por x(t, v) = e(t) + vb(t), donde e es su lnea de estricci n. Un punto p = x(t, v) es una singularidad o de la supercie si y s lo si p est sobre la linea de estricci n y o a o
Por otra parte, de la expresion para el vector normal a la supercie en x(t, v) dada por xt xv = e (t) b(t) + vb (t) b(t) y junto con (2.5) se tiene que b(t) (xt xv ) = b(t) (e (t) b(t)) + vb(t) (b (t) b(t)) (2.6) (2.7)
= 2 ( t ) + v2 b ( t )
(2.8)
De (2.5) se obtiene la expresion para (t) dada por (t) = b(t) 2 b (t) b(t)
2
(2.9)
Ahora, de (2.8) podemos ver que el punto p es una singularidad si y solo si v = 0 y 2 ( t ) = 0, es decir, si el punto p = x( t, v ) es un punto de estriccion y e ( t ) ( b ( t ) b(t)) = 0. El escalar (t) obtenido en (2.5) se conoce como par metro de distribuci n de la a o supercie en el generador Lt .
27
Observacion 2.1.2. Con la proposicion anterior se tiene una herramienta de gran utilidad en el diseno de supercies a partir de supercies regladas, puesto que por medio de la linea de estriccion es posible identicar las singularidades de este tipo de supercies. Los puntos de un generador son puntos regulares de la supercie, con la posible excepcion del punto de interseccion con la lnea de estriccion, el cual es el punto central del generador. Para una interpretacion geom trica del par metro de distribucion considee a remos lo siguiente. Sea S una supercie reglada no cilndrica parametrizada por x(t, v) = e(t) + vb(t). De (2.7) se obtiene la siguiente expresion para el vector normal N(t, v) = 1 b(t)
2
(2.10)
(2.11)
el cual es el vector normal a la supercie en el punto de estriccion x(t, 0) = e(t). Ahora, si es el angulo formado por el plano central del generador Lt y el plano tangente en el punto x(t, v), entonces cos = N(t, 0) N(t, v) N(t, 0) N(t, v) (t) 2 ( t ) + v2 b ( t )
2
=
De esta ultima expresion se sigue que
(t) =
(2.12)
De la ecuacion (2.12) se puede ver que el par metro de distribucion resulta ser la a razon entre, la distancia del punto x(t, v) al punto central x(t, 0) y el angulo comprendido por los planos tangentes a estos puntos, respectivamente.
2.2.
Supercies desarrollables
En la familia de supercies regladas se encuentran las que satisfacen que el plano tangente a la supercie sobre un generador es el mismo a lo largo de este, es decir, la direccion del vector normal a lo largo de un generador es constante.
28
Denicion 2.2.1. Sea S una supercie reglada parametrizada por x(t, v) = a(t) + vb(t). Decimos que S es una supercie desarrollable si el vector normal N(t, v), con t jo, tiene direccion constante para todo valor del par metro v. a En los ejemplos 2.1.3, 2.1.4 y 2.1.5, se exhiben las supercies desarrollables m s a simples. En esta seccion daremos la prueba de que cualquier supercie desarrollable est formada por trozos de estas. Vericamos primero que las supercies denidas a en estos ejemplos son supercies desarrollables. 1. Consideremos una supercie reglada cilndrica con parametrizacion x(t, v) = a(t) + vb0 , con b0 un vector jo. Con un simple c lculo vemos que el vector a normal a la supercie en el punto x(t, v), viene dado por N(t, v) = a (t) b0 , el cual no depende del par metro v, as, sobre el generador Lt , N(t, v) es consa tante. 2. Ahora, consideremos una supercie reglada con parametrizacion x(t, v) = a0 + vb(t) con a0 un punto jo. En este caso el vector normal a la supercie viene dado por N(t, v) = v(b (t) b(t)). Aunque N(t, v) depende de t y de v, vemos que su direccion, que es lo importante, no depende de v sobre el generador Lt . Adem s, cabe resaltar que a con v = 0 el vector normal es nulo, lo cual signica que el v rtice del cono es e una singularidad y se puede denir la linea de estriccion para el cono como la curva constante e(t) = a0 . 3. Finalmente, consideremos la supercie tangente a una curva a(t). Se tiene en tonces la parametrizacion x(t, v) = a(t) + va (t), el vector normal a esta supercie reglada est dado por a N(t, v) = v(a (t) a (t)) cuya direccion sobre el generador Lt no depende del par metro v. Notemos a adem s que el vector normal (con v 0) a la supercie tangente tiene la misa ma direccion que el vector binormal a la curva, de lo cual se desprende que el plano osculador a la curva directriz en el punto a(t) coincide con el plano tangente a la supercie en el generador Lt . Cuando v = 0 el vector normal es nulo, lo cual signica que los puntos sobre la linea de regresion (ver ejemplo
29
2.1.5) resultan ser las singularidades de la supercie, este hecho permite ar mar que la linea de estriccion de una supercie tangente y su linea de regresion coinciden. Adem s, la formula (2.4) valida este hecho. a Lema 2.2.1. (Condicion de desarrollabilidad) Sea S un supercie reglada parametrizada por x(t, v) = a(t) + vb(t) para t [ a, b]. La supercie reglada S es una supercie desarrollable si y s lo si para todo t [ a, b] se cumple o
(2.13)
Demostraci n. Si S es una supercie desarrollable, entonces los vectores normales en o cualquier par de puntos x(t, v1 ) y x(t, v2 ) del generador Lt son paralelos, luego 0 = N(t, v1 ) N(t, v2 )
a ( t ) b ( t ) + v1 b ( t ) b ( t ) a ( t ) b ( t ) + v2 b ( t ) b ( t )
= (v2 v1 )(a (t) b(t)) (b (t) b(t)) = (v1 v2 ) (a (t) b(t)) b (t) b(t).
Lo anterior implica, que con v1 v2 y b ( t ) 0 se obtiene (2.13).
Teorema 2.2.2. (Clasicacion de las supercies desarrollables) Cualquier supercie desarrollable puede ser dividida en trozos de tal forma que estos son, pedazos de planos, cilin dros, conos o supercies tangentes. Demostraci n. Sea S una supercie desarrollable con parametrizacion o
x(t, v) = a(t) + vb(t)
(2.14)
con a y b de clase C2 para t en un intervalo [ a, b]. Ya que para cada t [ a, b] se tiene (a (t) b(t)) b (t) = 0, existen funciones escalares f (t), g(t) y h(t) denidas en [ a, b], no todas simult neamente cero tales que a f a + gb + hb = 0. (2.15)
Supongamos que las funciones f , g y h son de la misma clase que a y b . Consideremos ahora los siguientes casos C. 1 Si f (t) = 0 para todo t en algun intervalo abierto I contenido en [ a, b]. De (2.15) se tiene que gb + hb = 0 (2.16)
30
y para todo t en I al menos una de las funciones g y h es distinta de cero. Calb culando la derivada del vector unitario b = b se tiene b bb b = b. b b 2
De (2.16) se obtiene g = h bbb2 y con (2.17) se sigue que
(2.17)
hb
b bb b h b b 2 b = h + gb b 1 = (hb + gb) b = 0
= h
de lo cual se desprende, que con h 0 en I entonces b es constante, es decir, la direccion de b es constante en I. Por tanto, para t en el intervalo I el trozo de supercie es un trozo de un cilindro o de un plano. C. 2 Si f (t) 0 para todo t en un intervalo abierto I contenido en [ a, b]. De (2.15) se sigue que g h a = b b . (2.18) f f Sea
a = a+
h b f h f b
(2.19)
luego
a =a +
h b + f
(2.20)
h f
g f
b.
(2.21)
C.2a Si (h/ f ) = g/ f 2 en un intervalo abierto I contenido en I, 3 entonces a = 0 y de (2.19) se tiene que a(t) = a0 es constante en I y as (2.14)
a los intereses de este trabajo, suponemos que los puntos donde se anulan las funciones involucradas en esta prueba son ceros aislados, ya que solo trataremos con funciones polinomiales y racionales. 3 En el caso que ( h/ f ) = g/ f en un punto aislado t = t , entonces para algun > 0 se cumple que 0 sobre los intervalos (t0 , t0 ) y (t0 , to + ) los trozos de supercies correspondientes son supercies tangentes. Ver caso C.2b.
2 Debido
31
queda como
x(t, v) = a0 +
h(t) f (t)
b(t)
(2.22)
la cual corresponde a la parametrizacion de un trozo de cono o de plano C.2b Si (h/ f ) g/ f en algun intervalo abierto I contenido en I entonces de (2.21) se sigue que b= h f g f
1
que junto con (2.19) en (2.14) produce h(t) b(t) + vb(t) f (t) h(t) f (t)
g(t) f (t)
x(t, v) = a(t)
g(t) f (t)
a (t)
El algoritmo de Aumann se publico en [1], este algoritmo permite disenar supercies desarrollables sobre curvas de B zier de manera simple. Enunciamos a contie nuacion el algoritmo. Algoritmo de Aumann. Sean a0 , a1 , . . . , am y b0 puntos en A3 y sean y nume ros reales. El algoritmo est dado por la siguiente formula recursiva. a
bi+1 = ai + (ai+1 ai ) + (bi ai ), con i = 0, 1, . . . , m 1.
(3.1)
El siguiente teorema establece el m todo para producir supercies desarrollables e a partir del algoritmo de Aumann. Teorema 3.1.1. Sean a0 , a1 , . . . , am y b0 en A3 donde los vectores b0 a0 y a1 a0 son no paralelos. Tomando los puntos bi como en (3.1) con y arbitrarios, se tiene que la supercie reglada S parametrizada por
x(t, v) =
i =0
(3.2)
linea de regresion de la supercie tangente puede ser calculada por medio de la formula para la linea de estriccion dada en (2.4).
32
33
i =0
i =0
Bim (t)bi
Cuando se toma (t, v) en el rect ngulo [0, 1] [0, 1] se obtiene un parche de Bzier desaa e rrollable el cual tiene como borde a las curvas de B zier a(t) y b(t), y a los segmentos e (1 v )a(0) + vb(0) y (1 v )a(1) + vb(1).
(a) Cilindro
(b) Cono
3.2.
Consideremos la supercie reglada x(t, v) = a(t) + vb(t) con a(t) en A3 y b(t) en R3 , curvas de B zier cubica y cuadr tica respectivamente, es decir, e a
a(t) = a0 (1 t)3 + 3a1 t(1 t)2 + 3a2 t2 (1 t) + a3 t3
(3.3)
34
para t [0, 1] y los puntos de control a0 , a1 , a2 , a3 en A3 y b0 , b1 y b2 en R3 . Ahora consideremos el siguiente problema: Dada la curva a(t), i.e. dados sus puntos de control a0 , a1 , a2 y a3 , que condiciones deben imponerse sobre los vectores b0 , b1 y b2 que controlan a la generatriz b(t) para que la supercie x(t, v) sea una supercie desarrollable? Comencemos considerando la condicion de desarrollabilidad para x(t, v), esto es, se debe dar que para todo t [0, 1] b ( t ) a ( t ) b ( t ) = c0 (1 t )5 + c1 t (1 t )4 + c2 t2 (1 t )3 + c3 t3 (1 t )2
+ c4 t4 (1 t ) + c5 t5 = 0.
La condicion de desarrollabilidad para x(t, v) queda expresada como la anulacion de un polinomio de grado 5 en t rminos de la base de polinomios de Bernstein, donde e sus coecientes reales est n dados por a c 0 = ( b 0 a0 ) b 1 c1 = (a0 b2 + (a0 + 2a1 ) b1 ) b0 c2 = ((2a1 + a0 ) b2 + (2a1 + a2 ) b1 ) b0 + (a0 b2 ) b1 c3 = (b0 (2a1 + a2 ) + b1 (2a1 + a0 )) b2 + (b0 a2 ) b1 (3.5) c4 = (b0 a2 + b1 (a2 + 2a1 )) b2 c 5 = ( b 1 a2 ) b 2 . De esta manera, la condicion de desarrollabilidad se da si y solo si c0 = c1 = c2 = c3 = c4 = c5 = 0. Por simplicidad, iniciamos considerando las ecuaciones c0 = 0 y c5 = 0, las cuales implican restricciones sobre los puntos b0 , b1 y b2 . Estas restricciones las agrupamos en los siguientes cuatro casos: Caso 1. b0 a0 = 0 y b1 a2 = 0. Caso 2. b0 a0 = 0 y b1 a2 Caso 3. b0 a0 0 con b2 ortogonal a b1 a2 .
35
Revisemos los cuatro casos mencionados, bajo el supuesto que {a0 , a1 , a2 } sea un conjunto linealmente independiente en R3 . Exigir esta condicion es equivalente a considerar la curva a(t) como una curva no plana, es decir, es considerar a la curva a(t) con torsion no nula. Caso 1. Para esta situacion, deben existir numeros reales k1 y k2 tales que b 0 = k 1 a0 b 1 = k 2 a2 . (3.6) (3.7)
Caso 1.1. Si se tiene k1 = k2 = 0 entonces resulta que b0 = b1 = 0 y as la supercie x(t, v) corresponde a un cilindro parametrizado por
x(t, v) = a(t) + vt2 b2 .
0 o k2
((k1 a0 2k2 a1 ) a2 ) b2 = 0.
Ya que {a0 , a1 , a2 } es un conjunto linealmente independiente, se sigue que exis ten numeros reales k3 y k4 tales que b2 = k1 k3 a0 2k2 k3 a1 + k4 a2 . Ahora, reemplazando esta ultima expresion en c1 , c2 y c3 de (3.5), se llega a que c1 = 2(k1 k2 )(a0 a1 ) a2 c2 = 2(k1 k2 k2 k3 + k1 k4 )(a0 a1 ) a2 2 c3 = 2(k2 k3 + k1 k4 )(a0 a1 ) a2 . 2 Claramente, para que se anule c1 se debe dar que k1 = 0 o k2 = 0, as estos no pueden ser distintos de cero simult neamente. a Caso 1.2. Suponiendo k1 0, entonces para que se satisfaga c1 = c2 = c3 = 0 se debe dar que k2 = k4 = 0. As b 0 = k 1 a0 b1 = 0 b2 = k1 k3 a0 . Para cualquier valor de k3 y k1 0 se tiene la desarrollabilidad de x(t, v). (3.8)
36
a0
a0
a0
Figura 3.2: Supercies desarrollables en el caso 1. Caso 2. De este caso se tiene que existen numeros reales k1 , k2 y k3 tales que b 0 = k 1 a0 b 2 = k 2 a2 + k 3 b 1 con estas expresiones en (3.5) haciendo c1 = 0 se sigue 2k1 (a1 b1 ) a0 = 0. Veamos los casos k1 = 0 y k1 0. Caso 2.1. Si k1 = 0, entonces de (3.9) se tiene b0 = 0, reemplazando esto, junto con (3.10) en (3.5) y haciendo c2 = 0 se tiene el primer t rmino e k2 (a0 a2 ) b1 = 0. De lo cual se tienen los siguientes subcasos: Caso 2.1.1. Si k2 = 0, entonces de (3.10) se sigue b2 = k3 b1 . Sin importar como sea b1 , con b0 = 0, b2 = k3 b1 se da la desarrollabilidad de x(t, v), para cualquier valor de k3 . (3.9) (3.10)
37
Caso 2.1.2. Si k2 0, de la independencia lineal de a0 y a2 se tiene que existen numeros reales k4 y k5 tales que b1 = k4 a0 + k5 a2 y as de (3.10), b2 = k3 k4 a0 + (k2 + k5 )a2 . Sustituyendo estas ultimas expresiones, junto con b0 = 0 en (3.5), se tiene que c0 = c1 = c2 = c5 = 0 y c3 = c4 = 2k2 k4 (a0 a1 ) a2 , as para anular estos coecientes se debe hacer k4 = 0, luego b0 = 0, b1 = k5 a2 y b2 = (k2 + k5 )a2 satisfacen la condicion de desarrollabilidad. Caso 2.2. Si k1 0, de la independencia lineal de a0 y a1 , se desprende que, existen numeros reales k4 y k5 tales que b1 = k4 a0 + k5 a1 (3.11)
con esto, a partir de (3.10) se obtiene la siguiente expresion para b2 en t rminos de e los ai s b2 = k3 k4 a0 + k3 k5 a1 + k2 a2 . (3.12) Reemplazando (3.9), (3.11) y (3.12) en (3.5) se tiene que c2 = (2k1 k2 k1 k5 k2 k5 )(a0 a1 ) a2 c3 = (2k1 k2 k1 k5 k2 k5 + 2k2 k4 k1 k3 k5 )(a0 a1 ) a2 c4 = (2k2 k4 k1 k3 k5 )(a0 a1 ) a2 (3.13) (3.14) (3.15)
ya que c3 = c2 + c4 , es suciente considerar c2 = c3 = 0. La solucion de estas ecuaciones para k2 y k3 en t rminos de k1 , k4 y k5 es e k2 = k3 k1 k5 2k1 k5 2k4 = . 2k1 k5
Con lo anterior se obtienen las siguientes expresiones para los puntos de control de b(t); v lidas para k5 2k1 . 2 a b0 = k1 a0 b1 = k4 a0 + k5 a1 2k2 k1 k5 k4 k5 4 a0 + a1 + a2 b2 = 2k1 k5 2k1 k5 2k1 k5 las cuales satisfacen ci = 0, con i = 0, 1 . . . , 5. Una vez jado b0 = b0 a0 se obtienen
suponer k1 0, se desprende que k5 = 2k1 no hace parte de la solucion, puesto que, para tener c2 = 0 en (3.13), es necesario tomar k5 = k1 = 0 lo cual no es posible bajo nuestro supuesto; k1 0.
2 Al
38
b1 = k4 a0 + k5 a1 2k2 b0 k5 k4 k5 4 b2 = a0 + a1 + a2 . 2b0 k5 2b0 k5 2b0 k5 Cabe notar, que con k5 = 0 se da que b1 y b2 es paralelo a a0 , si adem s, se toma a k4 = b0 ocurre que b(t) = b0 a0 es constante, paralelo al vector tangente en a(0).
a0
a0
a0
Figura 3.3: Supercies desarrollables en el caso 2. Caso 3. Para este caso, tenemos que a0 y b0 son linealmente independientes, luego existen numeros reales k1 , k2 y k3 tales que b 1 = k 1 a0 + k 2 b 0 y b1 = k3 a2 luego k1 a0 + k2 b0 = k3 a2 . Consideremos los casos k2 = 0 y k2 0. (3.17) (3.16)
Caso 3.1. Si k2 = 0 se tiene que k1 a0 = k3 a2 , la independencia lineal de a0 y a2 implica que k1 = k3 = 0, luego b1 = 0, reemplazando esto en (3.5) y simplicando los coecientes c1 , c2 , c3 y c4 se tiene que c1 = (b2 b0 ) a0 c2 = 2(b2 b0 ) a1 + (b2 b0 ) a0 c 3 = 2 ( b 2 b 0 ) a1 + ( b2 b 0 ) a2 c4 = (b2 b0 ) a2 .
39
F cilmente se ve, que c1 = c2 = c3 = c4 = 0 solo es posible cuando b2 y b0 sean paa ralelos, siendo esto as, existe un numero real k4 tal que b2 = k4 b0 . Con esto quedan determinados los puntos de control b1 = 0, b2 = k4 b0 y b0 es de eleccion libre. Caso 3.2. Si k2 0. De (3.16) y (3.17) que se sigue que b0 = k1 k3 a0 + a2 . k2 k2 (3.18)
b2 = 0.
Como {a0 , a1 , a2 } es linealmente independiente (suponiendo que k1 y k3 no son cero simult neamente) 3 , deben existir numeros reales k4 y k5 tales que a b2 = k1 k4 a0 + 2k3 k4 a1 + k5 a2 . k2 (3.19)
Sustituyendo (3.17), (3.18) y (3.19) en (3.5), se tienen las siguientes ecuaciones 2k1 k3 2k2 k4 + 3 k2 k2
c1 = c2 = c3 =
( a0 a1 ) a2 .
Consideremos los siguientes subcasos para k3 y k1 . Caso 3.2.1. Si k3 = 0 y k1 0, los coecientes c1 , c2 y c3 se reducen a c1 = 0 c2 = c3 2k1 k5 (a0 a1 ) a2 k2 2k k = 1 5 (a0 a1 ) a2 . k2
40
Caso 3.2.2. Supongamos k3 0 y k1 = 0. En este caso, de la la unica forma que se pueden anular los coecientes en (3.20) es con k4 = 0, as lo puntos de control resultan ser b0 = b1 k3 a2 k2 = k 3 a2
b 2 = k 5 a2 . Caso 3.2.3. Supongamos k3 0 y k1 0. Para resolver las ecuaciones c1 = c2 = c3 = 0, notamos que estos coecientes cumplen que c1 + c3 = c2 , luego es suciente con resolver c1 = c3 = 0; cuya su solucion en t rminos de k1 , k2 y k3 viene dada por e k4 = k5 k1 k3 k 1 k2 k 3 2 . = k2
Luego, con estas expresiones de k4 y k5 en (3.18), (3.17) y (3.19), se tiene que los puntos de control de b(t) vienen dados por b0 = b1 b2 k1 k3 a0 + a2 k2 k2 = k 3 a2 k2 k2 k 3 k 1 1 = a0 + 2k1 a1 + 2 a2 . k2 k3 k2 (3.21)
Si b0 est dado por b0 = b0 a0 + b2 a2 donde b0 y b2 son numeros reales, al igualar a esto con (3.21) se tiene que k1 = b0 k2 k3 = b2 k2 . Lo cual signica, que una vez jado b0 , la solucion en este caso depende de un par metro, a saber k2 0. a Caso 4. En este caso estamos considerando a0 y b0 linealmente independientes, junto con a2 y b1 linealmente independientes, luego se tiene que para ciertos numeros reales k1 , k2 , k3 y k4 se cumple que b1 = k1 a0 + k2 b0 b2 = k3 a2 + k4 b1 . Reemplazando (3.22) y (3.23) en c1 se sigue que c1 = (a0 (k3 a2 2k1 a1 )) b0 (3.22) (3.23)
41
a0
a0
a0
a0
Figura 3.4: Supercies desarrollables en el caso 3. ya que {a0 , a1 , a2 } es un conjunto linealmente independiente, al hacer c1 = 0 (suponiendo k1 0 o k3 0) 4 se da que para ciertos numeros reales k5 y k6 b0 = k6 a0 2k1 k5 a1 + k3 k5 a2 . (3.24)
Con esta ultima expresion en (3.22) y (3.23) se obtienen tambi n expresiones para b1 e y b2 en t rminos de a0 , a1 y a2 e b1 = (k1 + k2 k6 )a0 2k1 k2 k5 a1 + k2 k3 k5 a2 b2 = k4 (k1 + k2 k6 )a0 2k1 k2 k4 k5 a1 + k3 (1 + k2 k4 k5 )a2 . (3.25) (3.26)
42
+k1 k3 + k2 k3 k6 k2 k4 k5 )(a0 a1 ) a2 1
c4 = 2(k1 k3 + k2 k3 k6 k2 k4 k5 )(a0 a1 ) a2 . 1 Consideremos los siguientes casos para k1 y k3 . Caso 4.1. Si k1 = 0 y k3 0, los coecientes en (3.27) se reducen a c2 = 2k3 k6 (a0 a1 ) a2 c3 = 2(k3 k6 + k2 k3 k6 )(a0 a1 ) a2 c4 = 2k2 k3 k6 (a0 a1 ) a2 los cuales se anulan si k6 = 0, as, los puntos de control dados en (3.24), (3.25) y (3.26) se reducen a (ver gura 3.5(a)) b 0 = k 3 k 5 a2 b1 = k2 k3 k5 a2 b 2 = k 3 ( 1 + k 2 k 4 k 5 ) a2 . Caso 4.2. Si k1 0 y k3 = 0, los coecientes en (3.27) se reducen a c2 = 2k2 k5 (a0 a1 ) a2 1 c3 = 2(k2 k5 + k2 k4 k5 )(a0 a1 ) a2 1 1 c4 = 2k2 k4 k5 (a0 a1 ) a2 1 los cuales solo se anulan si k5 = 0, as, se tiene que los puntos de control dados en (3.24), (3.25) y (3.26) se reducen a b0 = b1 = b2 = 0. Caso 4.3. Si k1 0 y k3 0. Notemos que c3 = c2 + c4 , para ver bajo que condiciones se anulan los coecientes en (3.27) basta con ver cuando c2 = c4 = 0. Para esto se resuelven las ecuaciones k 3 k 6 k2 k 5 k 1 k 3 k 4 k 5 + k 1 k 2 k 3 k 5 = 0 1 k1 k3 + k2 k3 k6 k2 k4 k5 = 0. 1 (3.28) (3.29)
Consideremos los subcasos k5 = 0 y k5 0. Caso 4.3.1 Si k5 = 0, las ecuaciones (3.28) y (3.29) se reducen a k3 k6 = 0 y k1 k3 + k2 k3 k6 = 0, las cuales bajo las condiciones de este subcaso (k1 0 y k3 0) no tienen solucion.
43
Caso 4.3.2 Si k5 0, se resuelven entonces las ecuaciones (3.28) y (3.29) para k2 y k3 en t rminos de k1 , k3 , k5 y k6 y se tiene e k2 = k1 k4 = 1 k3 + 2 k3 k1 k5 k3 k6
k6 k k + 2 1 3 . k1 k5 k1 k5 k3 k6
Para el caso, cuando k2 k5 = k3 k6 , al reemplazar k6 en (3.28) y (3.29), se tiene que las 1 soluciones para k2 y k4 est n dadas por a k2 = k4 = k3 . k1 (k3 k5 )
Como {a0 , a1 , a2 } es una base para R3 , si se ja b0 se tiene entonces que para ciertos numeros reales b0 , b1 y b2 b0 = b0 a0 + b1 a1 + b2 a2
b luego, de (3.24) se tiene que k6 = b0 , k1 = 2k15 y k3 = siguientes expresiones en t rminos de b0 , b1 , b2 y k5 . e b k1 = 2k15 b2 k5 .
k2 = b1 k3 =
b2 k5
1 2b2
k 4 = 2 k5 = k5 k6 = b0 .
b0 b1
b1 b2 2 k5 (b1 4b0 b2 )
2 Notemos que una vez jados b0 0, b1 0 y b2 con b1 4b0 b2 jado b0 , se tiene que k5 0 es un par metro de la solucion. a
b0 = b0 a0 + b1 a1 + b2 a2 b1 = b1 2 b2 b0 + 1 b2 Dk5 b0 b1 b2 + b1 k5 D
2 a0 b1
2b 1 + 2 2b2 Dk5
a1 b1
2b2 1 + 2 2 Dk5
a2
b2 = 2
b1 +
b2 a2 . k5
44
Cuando hacemos k5 , se tiene k1 , k3 0, k2 b1 /2b2 y k4 2b0 /b1 , as b1 b2 Luego b0 (1 t)2 + 2b1 t(1 t) + b2 t2 b0 (1 t)2 b1 b0 b0 t (1 t ) + b0 t2 b2 b2 b b (1 t )2 1 t (1 t ) + 0 t2 . b2 b2 0, se tiene que b1 b2 b1 b0 2b2
b0 b0 . b2
= b0
b0 (1 t)2 + 2t(1 t) + t2 = b0
teniendo entonces que
x(t, v) a(t) + sb0 .
Esto es, la supercie desarrollable obtenida se aproxima a un cilindro. Como resumen a la solucion del problema planteado en esta seccion, presentamos las siguientes tablas:
a0
a0
(b) Caso4.3.2
45
Caso 1.1. b0 = 0 b1 = 0 b2 = b2
Caso 1.2. b0 = k1 a0 b1 = 0 b 2 = k 1 k 3 a0
a0
a0
Caso 1.3. b0 = 0 b 1 = k 2 a2 b 2 = k 4 a2
Caso 2.1.1. b0 = 0 b1 = b1 b2 = k 3 b1
a0
a0
Caso 2.1.2. b0 = 0 b 1 = k 5 a2 b 2 = ( k 2 + k 5 ) a2
2k1
k k + 2kk115k5 a1 + 2kk145k5 a2
a0
a0
46
Caso 3.1. b0 = b0 b1 = 0 b2 = k 4 b0
a0
a0
Caso 3.2.2. b 0 = k 3 a2 k2
b 1 = k 3 a2 b 2 = k 5 a2
+ 2k1 a1 +
k2 k 3 k 1 2 a2 k2
a0
a0
Caso 4.1. b 0 = k 3 k 5 a2 b1 = k2 k3 k5 a2 b 2 = k 3 ( 1 + k 2 k 4 k 5 ) a2
a0
47
0
1 2
2 b1 Dk5 b1 b2 k5 D
2 a0 b1
2b2 Dk5
a1 b1
2 2b2 Dk5
a2
b1 +
b2 k5 a2
a0
a0
a0
3.2.1.
Consideremos un B-spline cubico p(u) con puntos de de Boor p0 , p1 , . . . , pk+2 3 y con nodos x , x , x , x , . . . , x , x en A 2 1 0 1 k k+1 , xk +2 . En la seccion 1.3.2, se obtuvo formulas para obtener los puntos de control de las k curvas de B zier que conforman e el B-spline p(u). Si p(u) = ai (u) cuando u [ xi1 , xi ] donde u(t) = (1 t) xi1 + txi , entonces para t [0, 1]
ai (u(t)) = (1 t)3 ai0 + 3t(1 t)2 ai1 + 3t2 (1 t)ai2 + t3 ai3 .
de tal forma que xi (u, v) = ai (u) + v(ci (u) ai (u)) sea una supercie desarrollable se puede denir una supercie desarrollable por trozos x (u, v) = xi (u, v) para u [ xi1 , xi ]. Bajo la condicion ci3 ai3 = ci+1 0 ai+1 0 para i = 1, 2, . . . , k 1 se obtiene una supercie desarrollable en la cual los planos tangentes sobre los generadores xi ( xi , v) y xi+1 ( xi , v) coinciden. Por otro lado, si se requiere que la generatriz bi (u(t)) = ci (u(t)) ai (u(t)) sea cuadr tica, estas se seleccionan de las generatrices dadas en la seccion 3.2. Ver gura a 3.6
48
a20
a10
a0
(a) Supercie desarrollable con generatriz cuadr tica sobre un B-spline de dos pedazos. a
(c) Supercie desarrollable sobre un B-spline de tres pedazos usando el algoritmo de Aumann.
49
3.3.
En esta seccion mostraremos una manera de ver a las supercies desarrollables como conjuntos de puntos en un espacio proyectivo.
Bim (t)bi .
En principio no se puede considerar C(t) = [c(t)] como una curva de B zier en P3 , 5 e ya que los puntos de control de la curva dependen de las coordenadas homog neas e escogidas, puesto que cada multiplo escalar bi de bi con 0 representan el mismo m punto Bi . As, para lograr que una curva c(t) = i=0 Bim (t)bi , obtenida con coorde nadas homog neas bi de Bi cumpla que c(t) = c(t) para algun 0, se debe dar e que bi = bi para i = 0, 1, . . . , k. Para poder denir una curva de B zier en P3 de grado m es necesario, adem s de e a sus puntos de control B0 , B1 , . . . Bm , introducir puntos auxiliares, F0 , F1 , . . . Fm1 llamados puntos marco (frame points), los cuales deben cumplir que cada terna de puntos Bi , Fi , Bi+1 para i = 0, 1, , m 1 sea colineal, dichas ternas reciben el nombre de marco proyectivo de referencia. Lo que hacen los marcos proyectivos es indicar como se deben tomar las coordenadas homog neas b0 , b1 , . . . , bm de los puntos B0 , B1 , . . . Bm , e estas se toman por medio de la condicion
[ b i + b i +1 ] = F i .
As, dados los puntos de control B0 , B1 , . . . Bm y los puntos marco F0 , F1 , . . . Fm1 , se dene la curva de B zier C en P3 , para la cual, el punto C(t) tiene coordenadas e m e homog neas c(t) = i=0 Bim (t)bi donde las coordenadas homog neas bi de Bi obee decen la condicion [bi + bi+1 ] = Fi .
5 Es
50
z B1 F1
F0
z B1
B0
B0
B2
B2
F1
(a) Conica 1
(b) Conica 2
Figura 3.7: Conicas de B zier en P2 a partir de puntos de control proyectivos iguales e y puntos marco distintos.
3.3.2.
Algoritmo proyectivo
Consideremos los puntos de control B0 , B1 , , B y puntos marco F0 , F1 , . . . , F 1 m m 3 ) , los cuales se toman respectivamente como planos de control y planos maren (P co en P3 . Estos planos dados denen una supercie de B zier racional desarrollable e interpretada como su conjunto de planos tangentes, la cual puede ser expresada co mo una curva de B zier U(t) en (P3 ) con puntos de control B0 , B1 , , B y pune m , F , . . . , F tos marco F0 1 e m1 ; las coordenadas homog neas para U ( t ) pueden ser dadas por
u(t) =
i =0
Bim (t)bi
donde los vectores de coordenadas homog neas bi (en R4 ) de Bi obedecen la cone dicion [bi + bi+1 ] = Fi . La estructura de control de la supercie desarrollable U(t) se representa en la siguiente gura. La interseccion entre los dos primeros planos de control da el primer generador de la supercie y la interseccion de los dos ultimos da el ultimo generador de la supercie. El algoritmo se basa en la siguiente propiedad de interseccion: La intersecci n plao na C(t) de una supercie de Bzier desarrollable U(t) es una curva de Bzier. Las rectas de e e control y las rectas marco de la representaci n dual de C(t) son intersecciones planas de los o correspondientes planos de control y planos marco en la estructura de control dual de U(t). Para el diseno de parches de B zier racionales desarrollables a partir de la curva e
51
Fi*
Bi *
Bi+1*
Figura 3.8: Marco proyectivo de planos de control. U(t), se toman las intersecciones planas de la estructura de control (dual) con dos planos y (escogidos segun convenga). Para esto, es conveniente tomar sistemas de coordenadas proyectivas para los planos y , esto se hace con el n de que las rectas proyectivas de interseccion
Bi = Bi Fi = Fi se puedan representar con vectores de coordenadas homog neas bi , fi R3 , cume pliendose que Fi = [bi + bi+1 ]. La curva de interseccion U (t) = U(t) tiene coordenadas homog neas (en e 3 ) respecto al sistema de coordenadas tomado en R
u (t) =
i =0
Bim (t)bi .
(3.30)
La curva U es dual a una familia de rectas proyectivas que tienen como estructu ra de control a las rectas Bi y Fi . Ahora, para encontrar las coordenadas homog neas e determinada por la familia param trica de rectas de un punto sobre la curva C e ( t ), miramos en el algoritmo de de Casteljau implementado en (3.30) las coordeU nadas obtenidas en el penultimo paso, es decir
m b 0 1 = m 1 i =0
Bim (t)bi
y
m b1 1 = m 1 j =0
Bm (t)b+1 . j j
52
* B2 F2
B3* B1* F0 * b
B0*
Figura 3.9: Interseccion de una estructura de control con planos y . De acuerdo con el principio de dualidad, la recta en (P2 ) que determinan los m m puntos [b0 1 ] y [b1 1 ] es dual al punto C (t) en el cual se intersecan las dos recm m tas [b0 1 ] y [b1 1 ] en P2 , as las coordenadas homog neas c (t) del punto C (t) e est dada por a
m m c ( t ) = b 0 1 b 1 1 2m2
=
donde bk,0 =
k =0
Bi2m2 (t)bk,0
(2mk2) i+ j=k
m1 i
m1 bi b+1 . j j
(3.31)
As, se tiene una curva de B zier c (t) de grado 2m 2 (con posible elevacion de e ( t ) sobre el plano , la cual tambi n grado). Similarmente se construye otra curva c e es de grado 2m 2 y tiene puntos de control bk,1 con k = 0, 1, . . . , 2m 2, calculados con su formula an loga a (3.31). Ya con esto se tiene un parche de B zier racional a e desarrollable de grado 2m 1, parametrizado por S(t, u) = (1 u)c (t) + uc (t)
2m2
= (1 u )
k =0
Bi2m2 (t)bk,0
2m2
+u
k =0
Bi2m2 (t)bk,1 .
53
Tomemos para los planos proporcionados, las siguientes coordenadas homog neas e b0 = (1, 0, 1, 0) b1 = (2, 1, 0, 1) b2 = (4, 0, 1, 0) f0 = (1, 1, 1, 1) f1 = (2, 1, 1, 1). Con esto, se tiene una conica U(t) en (P3 ) , la cual tiene coordenadas homog neas e u(t) = (1 t)2 b0 + 2t(1 t)b1 + t2 b2 . Dual a U(t) en P3 , se tiene una supercie desarrollable S interpretada como su conjunto de planos tangentes. Ahora, vamos encontrar los puntos de B zier del parche e desarrollable determinado por U y los planos = {[(w, x, y, z)]/x = 0} = {[(w, x, y, z)]/w x = 0} . Empezamos tomando las rectas de interseccion en el plano
B0 = {[(w, 0, y, z)]/w y = 0} B1 = {[(w, 0, y, z)]/2w z = 0} B2 = {[(w, 0, y, z)]/4w y = 0} F0 = {[(w, 0, y, z)]/w + y z = 0} F1 = {[(w, 0, y, z)]/2w y + z = 0} .
54
Figura 3.10: Parches desarrollables. Estas rectas proyectivas en P3 pueden ser representadas por los vectores de coordenadas homogeneas en R3 ,
b0 = (1, 1, 0) b1 = (2, 0, 1) b2 = (4, 1, 0) f0 = (1, 1, 1) f1 = (2, 1, 1).
Ahora, los puntos de la curva C (t) determinada por las rectas de interseccion tienen 3 dadas por coordenadas homog neas en R e c ( t ) = b1 b1 0 1
= ((1 t)b0 + tb1 ) ((1 t)b1 + tb2 ) 1 = (1 t)2 b0 b1 + 2t(1 t) b b2 + t2 b1 b2 2 0 = (1 t)2 (1, 1, 2) + 2t(1 t)(0, 0, 3/2) + t2 (1, 4, 2)
y coordenadas homogeneas en R4 dadas por c (t) = (1 t)2 (1, 0, 1, 2) + 2t(1 t)(0, 0, 0, 3/2) + t2 (1, 0, 4, 2). Vemos que c (t) es una curva polinomial en R4 que corresponde a la curva racional
55
(plana) de R3
As, se obtiene el parche de B zier racional desarrollable. e S(t, u) = (1 u)a(t) + ub(t). En la gura 3.10(a) se muestra el parche obtenido con los planos y , el parche (b) es obtenido a partir de la mismos planos marco y de control, pero intersectando la gura de control con y el plano = {[(w, x, y, z)]/z = 0}.
Bibliografa
[1] AUMANN, Gunter. A Simple Algorithm for Designing Developable B zier Sure faces. En: Computer Aided Geometric Design 20, 601-619. 2002. [2] BIRCHFIELD, Stan. An Introduction to Projective Geometry. Tomado de: http://vision.stanford.edu/ birch/projective/projective.pdf [3] DO CARMO, Manfredo P. Differential Geometry of Curves and Surfaces . New Jersey: Prentice-Hall, 1976. 503p. [4] FARIN, Gerald. Curves and Surfaces for CAGD. San Francisco: Morgan Kaufmann Publishers. Fifth edition, 2002. 499p. [5] GOMES, Jonas, DARSA, Lucia, COSTA, Bruno y VELHO, Luiz. Warping and Morphing of Graphical Objects. San Francisco: Morgan Kaufmann. 1999. 490p. [6] KREYSZIG, Erwin. Differential Geometry. Dover Publications, 1991. 366p. [7] PALUSZNY, Marco, PRAUTZSCH, Hartmut y BOEHM, Wolfgang. M todos de e B zier y B-Splines. Universit tsverlag Karlsruhe, 2005. 303p. e a [8] POTTMANN, Helmut y FARIN, Gerald. Developable Rational B zier and Be spline Surfaces. En: Computer Aided Geometric Design 12, 513-531. 1995.
56