Você está na página 1de 5

Representación de curvas

• Como modelar y/o representar objetos reales ?


• Problema:
– No hay un modelo matemático del objeto
• Solución:
Graficación – Realizar una aproximación por pedazos de:
• Planos,
• esferas,
• otras formas ‘simples’ de modelar
Representación de curvas

• Se intenta que los puntos del modelo sean lo


más cercano a los puntos del objeto real.
2

Representación de curvas Representación Explicita


• Hay tres formas de representar los objetos: • En 2D, una curva será representada por
– Explícitamente : y = f(x)
Ejemplo
y = f(x)
• Una línea: y = ax + b
– Implícitamente:
• La mitad de un círculo: y = sqrt(r2 – x2)
f(x, y) = 0
– Paramétricamente:
• En 3D, para representar una curva se requieren
x = x(t) dos ecuaciones:
y = y(t) y = f(x), z = g(x)

• Una superficie será:


z = f(x, y)
3 4

Representación Implícita Representación Paramétrica


• En 2D, una curva será representada por • El valor de cada variable espacial se expresa en
f(x, y) = 0 # f es evaluada en el par (x, y) términos de una variable independiente (t),
Ejemplo llamada parámetro
• Una línea: ax + by + c = 0 • En 2D, una curva implícita es descrita como:
• Un círculo: x2 + y2 – r2 = 0 p(t) = [ x(t) y(t) ] T , con t1 <= t <= t2
• En 3D, una superficie se describe por • La derivada representa la tangente a la curva y
f(x, y, z) = 0 es perpendicular la la normal del punto
Ejemplo
dp(t)/dt = [ x(t)’ y(t)’ ]T
• Una esfera: x2 + y2 + z2 – r2 = 0
• Frecuente se normaliza de modo que:
• Una curva corresponde a la intersección de dos
superficies: t1 = 0 y t2 = 1
f(x, y, z) = 0 y g(x, y, z) = 0
5 6
Obs: el punto (x, y, z) debe pertenecer a ambas superficies

1
Representación Paramétrica: Ejemplo Representación Paramétrica
Ejemplo • Una superficie paramétrica requiere dos
parámetros:
1.0 1.0 y = x(u,v)
y = y(u,v)
z = z(u,v)

• Donde la representación matricial es:

1.0 p(u,v) = [ x(u,v), y(u,v), z(u,v)] T


1.0
x = cos α 0 <= α <= π/2 1 – t2
x=
1 + t2
y = sin α Obs: Los puntos de la superficie son generados
0 <= t <= 1
2t por la variación de los parámetros u, v.
y=
1 + t2
7 8

Curvas polinomiales paramétrica Spline


• Consideremos la curva • En aplicaciones gráficas, una spline es:
– Un conjunto de curvas que se forman con secciones
x(t) polinómicas
p(t) = – Satisfacen condiciones de continuidad en las
y(t)
fronteras
z(t) – Se definen especificando los puntos de control
• Los puntos de control
• La curva paramétrica polimonial de grado n es: – Establecen la forma general de la curva
n – Forman las ecuaciones paramétricas polimoniales
p(t) = ∑ t k Bk que definen la curva
• Dos casos:
k=0
– Interpolación
• Obs: Una curva paramétrica polimonial de grado n
– Aproximación
requiere n+1 puntos de control k = 0...n


9 10

Splines: Interpolación Splines: Aproximación


• Si la spline contiene todos los puntos de control se • Si la spline no contiene los puntos de control
dice que la curva interpola los puntos. se dice que la curva aproxima los puntos.

• Este tipo de curva es usada en herramientas de


diseño para estructurar superficies de objetos

Punto de control

• Este tipo de spline es particularmente útil en procesos


de digitalización de datos y especificación de
trayectos para animación.
11 12 Punto de control

2
Continuidad paramétrica Continuidad paramétrica
• Una spline esta compuesta por varias partes de • Continuidad de orden Cero C0:
polinomios cúbicos. – Las curvas se intersectan
• La suavidad de una spline puede especificarse • El punto final de una sección de la curva es idéntico a
punto inicial de la siguiente sección de la curva
imponiendo condiciones de continuidad entre
secciones: • Continuidad de Primer orden C1:
– Continuidad paramétrica Cn exige que las derivadas de – La primera derivada en paramétrica (tangente) en el
grado n de las secciones polinomiales coincida. punto de intersección es la misma para ambas
secciones de curva
– Continuidad geométrica Gn exige que la dirección y
sentido de las derivadas de grado n coincida. • Continuidad de Segundo Orden C2:
– La segunda derivada (curvatura) es el punto de
intersección es la misma para ambas secciones de
• Obs: La continuidad paramétrica normalmente es más fuerte curva
que la geométrica, pero existen casos especiales en que Gn no – Naturalmente, la primera derivada es también la
implica Cn. misma
13 14

Continuidad paramétrica Continuidad geométrica


• Continuidad de orden Cero C0: • Continuidad de orden Cero G0:
– Las curvas se intersectan (Idem a C0)
• El punto final de una sección de la curva es idéntico a
punto inicial de la siguiente sección de la curva

• Continuidad de Primer Orden C1: • Continuidad de Primer Orden G1:


– Las tangentes son proporcionales
La magnitud puede
no ser la misma
• Continuidad de Segundo Orden G2:
– La primera y segunda derivada son proporcionales
• Continuidad de Segundo Orden C2:

15 16

Representación Paramétrica Curvas de Bézier


• Volviendo a la representación paramétrica : • Polinomio de Bézier:
n

p(t) =
x(t) = axt3 + bxt2 + cxt + dx p(t) = ∑ pk Bk,n(t) 0 <= t <= 1
y(t) = ayt3 + byt2 + cyt + dy k=0
• Donde, pk corresponde a los puntos de control
z(t) = azt3 + bzt2 + czt + dz
pk = (xk, yk, zk)
donde, 0 <= t <= 1
• Bk,n(t) = C(n, k) tk (1-t)n-k
• y donde, C(n,k) representa los coeficientes binomiales:

C(n, k) =
n!
k!(n-k)!
17 18

3
Curvas de Bézier Curvas de Bézier
• Utilizando cuatro puntos de control (Pi), el • Ejemplos:
polinomio de Bézier es:
p1 p2 p2
p(t) = P0(1–t)3 + P13t(1–t)2 + P23t2(1–t)+ P3t3
p0
p3

• Este polinomio tiene una representación matricial: p0 p3


p1
–1 3 –3 1 P0
3 –6 3 0 P1
P(t) = TBP = t3 t2 t 1 –3 3 0 0 P2
1 0 0 0 P3

Curvas de Bézier Curvas de Hermite


• Varias curvas Bézier pueden ser unidas • Hermite: un segmento de curva polinomial
imponiendo alguna condición de continuidad cúbica
• Sus puntos de control corresponden a:
• El siguiente ejemplo satisface continuidad G1 – los puntos extremos P0 y P1
– los vectores tangentes P0'y P1'
• Usando estos valores, se despejan las incógnitas
Bk de la ecuación paramétrica (normalizada) y
se obtiene:
2 –2 1 1 P0
–3 3 –2 –1 P1
P(t) = THP = t3 t2 t 1
0 0 1 0 P’0
1 0 0 0 P’1

Curvas de Hermite Curvas de Hermite


• Ejemplos: • Varias curvas Hermite pueden ser unidas
imponiendo alguna condición de continuidad.

• El siguiente ejemplo satisface continuidad G1:

4
B-Splines B-splines cúbicas
• Una spline cúbica natural interpola todos sus • B-splines cúbicas aproximan una serie de m+1
puntos de control  puntos de control
• pero, cualquier cambio en uno de ellos afecta – P0, ..., Pm ; m>=3
la curva completa 

• sobre una curva consistente de m-2 segmentos


– Son difíciles de manipular 

polinomiales cúbicos knots


– Q3, Q4, ..., Qm
• B-splines son curvas de aproximación
– No interpolan los puntos de control
– Permiten una manipulación local de la curva
– Requieren menos cálculos para la determinación de • Usaremos un parámetro t secuencial de manera
sus coeficientes que Qi está definida para ti <= t <= ti+1 ; 3<=i<=m

25 26

Uniform Nonrational B-Splines Uniform Nonrational B-Splines


• En el caso de uniform nonrational B-splines • Cada segmento Qi(t) queda definido por la ecuación:
– los knots (puntos de unión entre Qi-1 y Qi) están
equispaciados sobre los intervalos de t Qi(t) = Ti MBs Gbsi ti <= t <= ti+1 ; 3<=i<=m
knots
• es decir, ti+1 - ti = constante • donde,
– Asumiremos que ti+1 - ti = 1. Ti = (t–ti)3 (t–ti)2 (t–ti) 1

• Cada segmento Qi(t) queda definido por la –1 3 –3 1 Pi-3


1 3 –6 3 0 Pi-2
ecuación: MBs = GBsi = P
6 –3 0 3 0 i-1
Qi(t) = Ti MBs Gbsi ti <= t <= ti+1 ; 3<=i<=m 1 4 1 0 Pi

• Qi y Qi+1 satisfacen continuidad C0, C1 y C2 en el knot que


los une (demostración propuesta).
27 28

Uniform Nonrational B-Splines

P5
P1 P2
Q3 Q7 P6
k4
k7 k8
k3
Q4
Q6

k5 k6
Q5
P7
P0 P3 P4
knots
punto de control

29

Você também pode gostar