Anda di halaman 1dari 14

5.4.

Aplicaciones de las transformaciones: reflexión,


dilatación,contracción y rotación.

Dilatación o escalamiento 2D

El escalamiento 2D implica el cambio de tamaño de un polígono, donde cada punto

p ( x1 , x 2 ) es transformado por la multiplicación de dos factores de escalamiento: s1 y s2 a

lo largo de los ejes X1 y X2 respectivamente, de esta forma, las coordenadas del nuevo punto

p ' ( x1 ' , x 2 ' ) se obtienen como:

x1 ' x1 s1
x2 ' x2 s2

Sea s ( s1 , s 2 ) el vector de factores de escalamiento, y S(s) la matriz de

escalamiento, en coordenadas homogéneas el escalamiento de un punto p en 2D se puede

expresar como el producto matricial p' p S ( s ) , es decir:

s1 0 0
x1 ' x 2 ' 1 x1 x2 1 0 s2 0
0 0 1

Ecuación 5.1: Expresión matricial para el escalamiento 2D.

La Figura 5.1 muestra el efecto de escalamiento de una figura con s1 = 1.5 y s2 = 2.


X2 X2

5 5

4 4

3 3

2 2

1 1

X1 X1
1 2 3 4 5 1 2 3 4 5

Figura 5.1: Ejemplo de escalamiento 2D.

219
V. Transformaciones Lineales.

Dilatación o escalamineto 3D

Extendiendo la idea anterior a 3D, el escalamiento implica el cambio de tamaño de un

poliedro, donde cada punto p ( x1 , x 2 , x3 ) es transformado por la multiplicación de tres

factores de escalamiento: s1, s2 y s3 a lo largo de los ejes X1, X2 y X3 respectivamente, de

esta forma, las coordenadas del nuevo punto p' ( x1 ' , x 2 ' , x3 ' ) se obtienen como:

x1 ' x1 s1
x2 ' x2 s2
x3 ' x3 s 3

Sea s ( s1 , s 2 , s3 ) el vector de factores de escalamiento, y S(s) la matriz de

escalamiento, en coordenadas homogéneas el escalamiento de un punto p en 3D se puede

expresar como el producto matricial p' p S ( s ) , es decir:

s1 0 0 0
0 s2 0 0
x1 ' x 2 ' x3 ' 1 x1 x2 x3 1
0 0 s3 0
0 0 0 1

Ecuación 5.2: Expresión matricial para el escalamiento 3D.

La Figura 5.2 muestra el efecto de escalamiento de una figura con s1 = 2, s2 = 2.5 y

s3 = 1.5.

220
V. Transformaciones Lineales.

X2 X2
5 5

4 4

3 3

2 2

1 1

X1 X1
1 2 3 4 5 1 2 3 4 5
1 1
2 2
3 3
X3 4 X3 4
5 5

Figura 5.2: Ejemplo de escalamiento 3D.

Escalamiento o dilatación 4D

Extendiendo nuevamente la idea anterior a 4D, el escalamiento implica el cambio de

tamaño de un politopo 4D, donde cada punto p ( x1 , x 2 , x3 , x 4 ) es transformado por la

multiplicación de cuatro factores de escalamiento: s1, s2, s3 y s4 a lo largo de ejes que

forman el espacio 4D, de esta forma, las coordenadas del nuevo punto

p ' ( x1 ' , x 2 ' , x3 ' , x 4 ' ) se obtienen como:

x1 ' x1 s1
x2 ' x2 s2
x3 ' x3 s 3
x4 ' x4 s4

Sea s ( s1 , s 2 , s3 , s 4 ) el vector de factores de escalamiento, y S(s) la matriz de

escalamiento, en coordenadas homogéneas el escalamiento de un punto p en 4D se puede

expresar como el producto matricial p' p S ( s ) , es decir:

221
V. Transformaciones Lineales.
s1 0 0 0 0
0 s2 0 0 0
x1 ' x 2 ' x3 ' x 4 ' 1 x1 x2 x3 x4 1 0 0 s3 0 0
0 0 0 s4 0
0 0 0 0 1

Ecuación 5.3: Expresión matricial para el escalamiento 4D.

Escalamiento o dilatación nD

De esta forma, el escalamiento nD implica el cambio de tamaño de un politopo nD en

todas sus dimensiones, como se observó anteriormente, se puede representar el

escalamiento nD en su forma matricial, donde los factores de escalamiento se localizan en

la diagonal principal, cada uno colocado en la columna que le corresponde a su respectivo

eje. Así, se obtiene la expresión matricial de escalamiento para cualquier dimensión:

s1 0 0 0 0
0 s2 0 0 0
0 0 s3 0 0
x1 ' x 2 ' x3 ' xn ' 1 x1 x2 x3 xn 1

0 0 0 sn 0
0 0 0 0 1

Ecuación 5.4: Expresión matricial para el escalamiento nD.

En general, la matriz de escalamiento S(s) para nD en coordenadas homogéneas tendrá

un tamaño de (n+1) (n+1), en la cual, si se sustituyen los valores para n=2 y n=3, se

obtienen las matrices de escalamiento 2D y 3D respectivamente.

Translación
La translación permite desplazar un objeto a lo largo de sus dimensiones, como

resultado se obtiene un cambio de posición.

222
V. Transformaciones Lineales
Lineales.
Translación 2D

La translación 2D implica el desplazamiento de un polígono, donde cada punto

p ( x1 , x 2 ) es trasladado d1 unidades en el eje X1 y d2 unidades en el eje X2, de esta forma,

las coordenadas del nuevo punto p' ( x1 ' , x 2 ' ) , se obtienen como:

x1 ' x1 d1
x2 ' x2 d2

Sea d (d 1 , d 2 ) el vector de distancias, y T(d) la matriz de translación, en

coordenadas homogéneas la translación de un punto p en 2D se puede expresar como el

producto matricial p' p T (d ) , es decir:

1 0 0
x1 ' x 2 ' 1 x1 x2 1 0 1 0
d1 d2 1

Ecuación 5.5: Expresión matricial para la translación 2D.

La Figura 3.3 muestra el efecto de translación de una figura con d1 = 1 y d2 = 2.

X2 X2
5 5

4 4

3 3

2 2

1 1

X1 X1
1 2 3 4 5 1 2 3 4 5

Figura 5.3: Ejemplo de translación 2D.

Translación 3D

Basándose en la idea anterior, se tiene que la translación 3D implica el

desplazamiento de un poliedro, donde cada punto p ( x1 , x 2 , x3 ) es trasladado d1 unidades

223
V. Transformaciones Lineales.
en el eje X1 , d2 unidades en el eje X2 y d3 unidades en el eje X3, de esta forma, las

coordenadas del nuevo punto p' ( x1 ' , x 2 ' , x3 ' ) se obtienen como:

x1 ' x1 d1
x2 ' x2 d2
x3 ' x 3 d3

Sea d (d1 , d 2 , d 3 ) el vector de distancias, y T(d) la matriz de translación, en

coordenadas homogéneas la translación de un punto p en 3D se puede expresar como el

producto matricial p' p T (d ) , es decir:

1 0 0 0
0 1 0 0
x1 ' x 2 ' x3 ' 1 x1 x2 x3 1
0 0 1 0
d1 d2 d3 1

Ecuación 5.6: Expresión matricial para la translación 3D.

La Figura 5.4 muestra el efecto de translación de una figura con d1 = 2, d2 = 0 y d3 = 2.

X2 X2
5 5

4 4

3 3

2 2

1 1

X1 X1
1 2 3 4 5 1 2 3 4 5
1 1
2 2
3 3
X3 4 X3 4
5 5

Figura 5.4: Ejemplo de translación 3D.

224
V. Transformaciones Lineales.
Translación 4D

Nuevamente tomando como base esta idea, se tiene que la translación 4D implica el

desplazamiento de un politopo 4D, donde cada punto p ( x1 , x 2 , x3 , x 4 ) es trasladado por

la suma de cuatro distancias: d1, d2, d3, d4 a cada uno de los ejes que forman el espacio 4D,

de esta forma, las coordenadas del nuevo punto p ' ( x1 ' , x 2 ' , x3 ' , x 4 ' ) se obtiene como:

x1 ' x1 d1
x2 ' x2 d2
x3 ' x 3 d3
x4 ' x4 d4

Sea d (d1 , d 2 , d 3 ,d 4 ) el vector de distancias, y T(d) la matriz de translación, en

coordenadas homogéneas la translación de un punto p en 4D se puede expresar como el

producto matricial p' p T (d ) , es decir:

1 0 0 0 0
0 1 0 0 0
x1 ' x 2 ' x3 ' x 4 ' 1 x1 x2 x3 x4 1 0 0 1 0 0
0 0 0 1 0
d1 d2 d3 d4 1

Ecuación 5.7: Expresión matricial para la translación 4D.

Translación nD

De esta forma, la translación nD implica el desplazamiento de un politopo nD

sumando parámetros de distancias a todas sus dimensiones, como se observó anteriormente,

se puede representar la translación nD en su forma matricial, donde los parámetros de

distancia se localizan en el último renglón de la matriz, cada uno colocado en la columna

que le corresponde a su respectivo eje, y colocando valores de 1 en la diagonal principal.

Así, se obtiene la expresión matricial de translación para cualquier dimensión:

225
V. Transformaciones Lineales.
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
x1 ' x 2 ' x3 ' xn ' 1 x1 x2 x3 xn 1

0 0 0 1 0
d1 d2 d3 dn 1

Ecuación 5.8: Expresión matricial para la translación nD.

En general, la matriz de translación T(d) para nD en coordenadas homogéneas tendrá

un tamaño de (n+1) (n+1), en la cual, si se substituyen los valores para n=2 y n=3, se

obtienen las matrices de translación 2D y 3D respectivamente.

Rotación
La rotación permite girar un objeto sobre un eje de rotación, dado un valor de ángulo

de rotación y su dirección.

Rotaciones 2D

La rotación de un objeto en 2D se lleva a cabo alrededor de un punto, que es el eje

puntual (cero-dimensional) de rotación. Las rotaciones principales 2D son aquellas que se

llevan a cabo alrededor del origen, las rotaciones sobre cualquier otro punto arbitrario se

llaman rotaciones generales 2D. En esta Sección 5.5 , se analizan sólo las rotaciones prin-

cipales para todas las dimensiones, en la Sección 5.6 se discuten las rotaciones generales.

Para generar una rotación, se especifica el ángulo de rotación , y el punto de rotación

(pivote) sobre el cuál el objeto será rotado. Los ángulos de rotación positivos definen una

rotación en sentido contrario a las manecillas del reloj sobre el punto pivote (del eje X1 al

eje X2), entonces los ángulos de rotación negativos producen una rotación en el sentido de

226
V. Transformaciones Lineales.

las manecillas (del eje X2 al eje X1). [Hearn 95] describe la rotación 2D como el giro sobre

el eje de rotación que es perpendicular al plano X1X2 (mejor conocido como plano XY) y

que pasa a través del punto pivote.

Si el punto pivote se encuentra sobre el origen (Figura 5.5), se tiene que: r es la

distancia del punto p ( x1 , x 2 ) al origen, define la posición angular del punto p desde la

horizontal, y el ángulo de rotación de p para producir el nuevo punto p ' ( x1 ' , x 2 ' ) .

X2 p’=(x1’,x2’)

r
p=(x1,x2)
r

X1

Figura 5.5: Rotación de un punto en 2D alrededor del origen.

Utilizando coordenadas polares, el punto p ( x1 , x 2 ) se puede escribir como

p (r , ) y el punto p ' ( x1 ' , x 2 ' ) como p ' (r , ) . Pasando después estos puntos de

coordenadas polares a rectangulares se tiene que:

x1 r cos( ) x2 r sin( )
x1 ' r cos( ) x 2 ' r sin( )

Aplicando algunas propiedades trigonométricas:

x1 ' r cos( ) r cos cos r sin sin


x 2 ' r sin( ) r cos sin r sin cos

Substituyendo los valores de x1 r cos( ) y x 2 r sin( ) se obtienen las ecuaciones para

rotar un punto p ( x1 , x 2 ) alrededor del origen dado un ángulo :

227
V. Transformaciones Lineales.

x1 ' x1 cos x 2 sin

x2 ' x1 sin x2 cos

Ecuación 5.9: Fórmulas para la rotación 2D alrededor del origen.

Sea R( ) la matriz de rotación sobre el origen, en coordenadas homogéneas la rotación


de un punto p alrededor del origen en 2D se puede expresar como el producto matricial

p p R , es decir:

cos sin 0
x1 ' x 2 ' 1 x1 x2 1 sin cos 0
0 0 1

Ecuación 5.10: Expresión matricial para la rotación 2D.

La Figura 5.6 muestra el efecto de rotación de una figura con =


45 .
X2 X2

2 2

1 1

X1 X1
-1 -2 1 2 -1 -2 1 2

-1 -1

-2 -2

Figura 5.6: Ejemplo de rotación 2D.

Rotaciones 3D

A diferencia de la rotación en el espacio 2D, donde para hacer rotar un objeto se

necesita un punto (cero-dimensional), en 3D para hacer rotar un objeto se necesitan dos

puntos no coincidentes que determinan un segmento de recta, cuya línea de soporte define

un eje lineal (uni-dimensional) de rotación.

228
V. Transformaciones Lineales.

Las rotaciones principales 3D, son aquellas cuando el eje de rotación se encuentra

sobre alguno de los tres ejes principales: X1, X2 o X3, las rotaciones sobre cualquier otro eje

arbitrario son llamadas rotaciones generales 3D. Se recuerda que inicialmente, se analizan

las rotaciones principales.

Por convención, los ángulos de rotación positivos producen rotaciones en contra de

las manecillas del reloj sobre el eje de rotación, esto es si se observa el giro desde la parte

positiva del eje hacia el origen. Otra forma de determinar la dirección de un giro positivo es

mediante la regla de la mano derecha (Figura 5.7), que dice que: “Si se coloca el dedo

pulgar de la mano derecha sobre el eje de rotación apuntando hacia la parte positiva de

dicho eje, el giro natural del resto de los dedos indica la dirección positiva del giro”.

X2 X2 X2

X1 X1 X1

X3 X3 X3

Figura 5.7: Regla de la mano derecha para obtener la dirección de un giro positivo en 3D.

Para entender el concepto de rotación en 3D como una extensión de la rotación 2D,

hay que recordar que la rotación 2D es el giro sobre el eje de rotación, que es perpendicular

al plano X1X2, el cual en 3D corresponde al eje X3, entonces se tiene la primera de las rota-

ciones principales .

De esta forma, por cada punto p ( x1 , x 2 , x3 ) dado un ángulo , puede ser rotado

sobre el eje X3 en sentido contrario a las manecillas del reloj, obteniendo las coordenadas

del nuevo punto p' ( x1 ' , x 2 ' , x3 ' ) de la misma forma en como se analizó en el espacio 2D

229
V. Transformaciones Lineales.

quedando la coordenada x3 sin cambio, entonces, se extienden las formulas para la

rotación 2D (Ecuación 3.9) a 3D como:

x1 ' x1 cos x 2 sin

x2 ' x1 sin x 2 cos

x3 ' x3

Ecuación 5.11: Fórmulas para la rotación 3D alrededor del eje X3.

Sea R3( ) la matriz de rotación alrededor del eje X3, en coordenadas homogéneas la
rotación de un punto p alrededor de dicho eje, se puede expresar como el producto matricial

' ( )
p p R3 , es decir:

cos sin 0 0
sin cos 0 0
x1 ' x 2 ' x3 ' 1 x1 x2 x3 1
0 0 1 0
0 0 0 1

Ecuación 5.12: Expresión matricial para la rotación 3D alrededor del eje X3.

La Figura 5.8 muestra el efecto de rotación sobre el eje X3 de una figura con = 20 .

X2 X2
5 5

4 4

3 3

2 2

1 1

X1 X1
1 2 3 4 5 1 2 3 4 5
1 1
2 2
3 3
X3 4 X3 4
5 5

Figura 5.8: Ejemplo de rotación 3D sobre el eje X3.

230
V. Transformaciones Lineales.

Las ecuaciones para las rotaciones sobre el eje X1, y eje X2, pueden ser obtenidas

mediante las permutaciones cíclicas de los parámetros x1, x2, x3:

x1 x2 x3 x1

como se muestra en la Figura 3.9

X2 X3 X1

X1 X2 X3

X3 X1 X2

Figura 5.9: Permutaciones cíclicas de los ejes coordenados

Entonces, aplicando estas substituciones cíclicas en la Ecuación 5.11, se obtienen las

ecuaciones para la rotación alrededor del eje X1 dado un ángulo .


x 2 ' x 2 cos x 3 sin x1 ' x1

x3 ' x 2 sin x 3 cos x 2 ' x 2 cos x 3 sin

x1 ' x1 x3 ' x 2 sin x 3 cos

Ecuación 5.13: Fórmulas para la rotación 3D alrededor del eje X1.

Sea R1( ) la matriz de rotación alrededor del eje X1, en coordenadas homogéneas la
rotación de un punto p alrededor de dicho eje, se puede expresar como el producto matricial

p p R1 , es decir:

1 0 0 0
0 cos sin 0
x1 ' x 2 ' x3 ' 1 x1 x2 x3 1
0 sin cos 0
0 0 0 1

Ecuación 5.14: Expresión matricial para la rotación 3D alrededor del eje X1.

231
V. Transformaciones Lineales.

Aplicando nuevamente las substituciones cíclicas en la Ecuación 3.13, se obtienen las

fórmulas para la rotación alrededor del eje X2 dado un ángulo .

x3 ' x 3 cos x1 sin x1 ' x1 cos x 3 sin

x1 ' x 3 sin x1 cos x2 ' x2

x2 ' x2 x3 ' x1 sin x 3 cos

Ecuación 5.15: Fórmulas para la rotación 3D alrededor del eje X2.

Sea R2( ) la matriz de rotación alrededor del eje X2, en coordenadas homogéneas la
rotación de un punto p alrededor de dicho eje, se puede expresar como el producto matricial

p p R2 , es decir:

cos 0 sin 0
0 1 0 0
x1 ' x 2 ' x3 ' 1 x1 x2 x3 1
sin 0 cos 0
0 0 0 1

Ecuación 3.16: Expresión matricial para la rotación 3D alrededor del eje X2.

232

Anda mungkin juga menyukai