Vous êtes sur la page 1sur 47

CAPTULO IV

Representacin
Tridimensional de Objetos
Transformaciones elementales
tridimensionales
TRASLACI N
(x,y,z)
(x,y,z)
T=(Tx,Ty,Tz)
x
y
z
(
(
(
(

=
1 Tz Ty Tx
0 1 0 0
0 0 1 0
0 0 0 1
) Tz , Ty , Tx ( Tr
| | | |
(
(
(
(

=
1 Tz Ty Tx
0 1 0 0
0 0 1 0
0 0 0 1
1 z y x 1 ' z ' y ' x
Tz z ' z
Ty y ' y
Tx x ' x
+ =
+ =
+ =
(x,y,z)
(x,y,z)
T=(Tx,Ty,Tz)
x
y
z
(
(
(
(

(
(
(
(

=
(
(
(
(

1
z
y
x

1 0 0 0
Tz 1 0 0
Ty 0 1 0
Tx 0 0 1
1
' z
' y
' x
Tz z ' z
Ty y ' y
Tx x ' x
+ =
+ =
+ =
ESCALAMI ENTO
x
y
z
(
(
(
(

=
1 0 0 0
0 Ez 0 0
0 0 Ey 0
0 0 0 Ex
) Ez , Ey , Ex ( Es
(
(
(
(

(
(
(
(

=
(
(
(
(

1
z
y
x

1 0 0 0
0 Ez 0 0
0 0 Ey 0
0 0 0 Ex
1
' z
' y
' x
Ez z ' z
Ey y ' y
Ex x ' x
=
=
=
El escalamiento tridimensional puede
efectuarse en cualquiera de las tres direcciones:
x, y , z.
La matriz de transformacin se define cuando
el punto fijo de escalamiento coincide con el
origen de coordenadas. Si este punto se localiza
en otra posicin, debe trasladarse este punto (y
todas las componentes del objeto) al origen,
efectuar el escalamiento y aplicar la traslacin
inversa para regresar los puntos a la posicin
inicial.
ESCALAMI ENTO
ROTACI N
y
z
x
0
a) Rotacin alrededor del eje x
La rotacin de un punto alrededor del eje x se produce
sobre un plano paralelo al plano yz. El valor de la
coordenada x no cambia.
Su matriz de rotacin es
(
(
(
(

=
1 0 0 0
0 ) cos( ) ( sen 0
0 ) ( sen ) cos( 0
0 0 0 1
) ( Rx
o o
o o
o
| | | |
(
(
(
(

=
1 0 0 0
0 ) cos( ) ( sen 0
0 ) ( sen ) cos( 0
0 0 0 1
1 z y x 1 ' z ' y ' x
o o
o o
a) Rotacin alrededor del eje x
(
(
(
(

(
(
(
(

=
(
(
(
(

1
z
y
x

1 0 0 0
0 ) cos( ) ( sen 0
0 ) ( sen ) cos( 0
0 0 0 1
1
' z
' y
' x
o o
o o
) cos( z ) ( ysen ' z
) ( zsen ) cos( y ' y
x ' x
o o
o o
+ =
=
=
O tambin:
b) Rotacin alrededor del eje y
La rotacin de un punto alrededor del eje y se realiza
en un plano paralelo al plano xz . El valor de la
coordenada y no cambia.
La matriz de rotacin alrededor del eje y es:
(
(
(
(


=
1 0 0 0
0 ) cos( 0 ) ( sen
0 0 1 0
0 ) ( sen 0 ) cos(
Ry
o o
o o
| | | |
(
(
(
(


=
1 0 0 0
0 ) cos( 0 ) ( sen
0 0 1 0
0 ) ( sen 0 ) cos(
1 z y x 1 ' z ' y ' x
o o
o o
b) Rotacin alrededor del eje y
(
(
(
(

(
(
(
(

=
(
(
(
(

1
z
y
x

1 0 0 0
0 ) cos( 0 ) ( sen
0 0 1 0
0 ) ( sen 0 ) cos(
1
' z
' y
' x
o o
o o
O tambin:
) cos( z ) ( xsen ' z
y ' y
) ( zsen ) cos( x ' x
o o
o o
+ =
=
+ =
c) Rotacin alrededor del eje z
La rotacin de un punto alrededor del eje z se realiza
en un plano paralelo al plano xy . El valor de la
coordenada z no cambia.
La matriz de rotacin alrededor del eje z es:
(
(
(
(

=
1 0 0 0
0 1 0 0
0 0 ) cos( ) ( sen
0 0 ) ( sen ) cos(
) ( Rz
o o
o o
o
c) Rotacin alrededor del eje z
| | | |
(
(
(
(

=
1 0 0 0
0 1 0 0
0 0 ) cos( ) ( sen
0 0 ) ( sen ) cos(
1 z y x 1 ' z ' y ' x
o o
o o
(
(
(
(

(
(
(
(


=
(
(
(
(

1
z
y
x

1 0 0 0
0 1 0 0
0 0 ) cos( ) ( sen
0 0 ) ( sen ) cos(
1
' z
' y
' x
o o
o o
O tambin:
z ' z
) cos( y ) ( xsen ' y
) ( ysen ) cos( x ' x
=
+ =
=
o o
o o
d) Rotacin alrededor de un eje arbitrario
Representacin del eje de rotacin
Dos puntos, R1(x1,y1,z1) y R2(x2,y2,z2), definen una
recta.
Las ecuaciones paramtricas de la recta que pasa por
estos dos puntos son
1 ) 1 2 (
1 ) 1 2 (
1 ) 1 2 (
z t z z z
y t y y y
x t x x x
+ =
+ =
+ =
1 ) 1 2 (
1 ) 1 2 (
1 ) 1 2 (
z t z z z
y t y y y
x t x x x
+ =
+ =
+ =
donde t toma valores reales.
Si t = 0, se alcanza el punto R1,
Si t = 1, se alcanza el punto R2.
El segmento de recta que va de R1 a R2
tiene valores de
1 t 0 s s
Representacin del eje de rotacin
R2 R1
0
x
y
z
Lnea entre
R1 y R2
) 1 z 2 z ( c
) 1 y 2 y ( b
) 1 x 2 x ( a
=
=
=
1 z ct z
1 y bt y
1 x at x
+ =
+ =
+ =
Podemos representar estas ecuaciones como:
Representacin del eje de
rotacin
1 ) 1 2 (
1 ) 1 2 (
1 ) 1 2 (
z t z z z
y t y y y
x t x x x
+ =
+ =
+ =
R1
R2
Observe que R1 y R2 pueden considerarse como
vectores, y que la diferencia
R2 - R1 = (x2 - x1 , y2 - y1 , z2 - z1) = (a , b , c)
es el vector (direccin) de R1 a R2 sobre la recta que
describe la misma trayectoria.
Por lo tanto, son tres valores a , b , c los que describen
la direccin de la recta que transcurre del punto
(x1,y1,z1) al punto (x2,y2,z2).
De aqu que una recta pueda definirse por medio de
un punto superpuesto, (x1,y1,z1), y por una direccin
(a,b,c).
Representacin del eje de rotacin
Rotacin alrededor del eje arbitrario:
Sea (x1 , y1 , z1) un punto sobre el cual pasa el eje de
rotacin y cuyo vector de direccin es (a , b , c).
La rotacin de un ngulo o alrededor de este eje se
realiza siguiendo los siguientes pasos.
(x1,y1,z1)
0
x
y
z
(a,b,c)
1 Trasladar el punto (x1,y1,z1) al origen
2 Rotar en torno al eje x hasta que el eje de rotacin
alcance el plano xz.
3 Rotar sobre el eje y hasta que el eje de rotacin
corresponda al eje z.
4 Rotar sobre el eje z un ngulo o
5 Realizar la rotacin inversa del paso 3
6 Realizar la rotacin inversa del paso 2
7 Realizar la traslacin inversa del paso 1
Rotacin alrededor del eje arbitrario:
Estos pasos transforman el eje de
rotacin en el eje z y realizan la
rotacin del ngulo o , para despus
transformar el eje de rotacin en su
posicin original.
Los siete pasos se efectan de la
siguiente manera:
1 paso: Trasladar el punto (x1,y1,z1) al origen
(
(
(
(


=
1 1 z 1 y 1 x
0 1 0 0
0 0 1 0
0 0 0 1
) 1 z , 1 y , 1 x ( Tr
Despus de esta traslacin, el vector de direccin
(a,b,c) que define el eje de rotacin est en la
posicin que muestra la siguiente figura de la derecha.
(x1,y1,z1)
0
x
y
z
(a,b,c)
(a,b,c)
Se puede usar la proyeccin de la recta
hacia el plano yz y considerar esto como una
rotacin en torno al origen, con el eje x.
2 Paso. Rotar en torno al eje x hasta que el eje de
rotacin alcance el plano xz.
Se puede usar la
proyeccin de la recta
hacia el plano yz y
considerar esto como
una rotacin en torno al
origen, con el eje x.
Cuando el eje de rotacin se proyecta sobre el
plano yz , cualquier punto sobre ste tiene la
coordenada x igual a cero. En particular a = 0.
Esta recta proyectada o, lo que es lo mismo, el
punto (0 , b , c), se rota | grados hasta que la
recta corresponda al eje z .
No es necesario encontrar el ngulo | sino el
seno y el coseno del ngulo, ya que estas
funciones trigonomtricas definen la matriza de
rotacin.
En figura se observa
que la distancia entre
el origen y (0 , b , c)
es
Entonces:

1 d
c
) cos(
1 d
b
) ( sen
=
=
|
|
2 2
1 c b d + =
Al sustituir estos valores en la matriz de
rotacin sobre el eje x, se tiene
(
(
(
(
(

=
1 0 0 0
0
1 d
c
1 d
b
0
0
1 d
b
1 d
c
0
0 0 0 1
) ( Rx |
3 Paso. Despus de este paso, el eje de rotacin
se halla en el plano xz y el punto (0 , b , c) ha
sido transformado en el punto (0 , 0 , d1).
Dado que la rotacin en torno al eje x no
cambia los valores de las coordenadas x, el
punto (a , b , c) est ahora en la posicin
(a , 0 , d1).
( a,0,d1)
0
x
y
z
el punto (a , b , c) est ahora en la posicin
(a , 0 , d1).
El siguiente paso es una rotacin alrededor
del eje y hasta que el punto (a , 0 , d1) est en
el eje z . Como (a , 0 , d1) est en el plano xz
se puede visualizar esto como rotacin
alrededor del origen, con el eje y como eje de
rotacin. Habr que rotar un ngulo o en el
sentido horario; es decir (-o).
2 2 2 2 2
c b a 1 d a 2 d + + = + =
entonces:
2 d
1 d
) cos(
2 d
a
) ( sen
=
=
o
o
y
2 d
1 d
) cos(
2 d
a
) ( sen
=
=
o
o
Al sustituir estos valores en la matriz de rotacin
respecto al eje y , se obtiene:
(
(
(
(
(
(

=
1 0 0 0
0
2 d
1 d
0
2 d
a
0 0 1 0
0
2 d
a
0
2 d
1 d
) ( Ry o
El paso 4 requiere slo la matriz de rotacin.
Los ltimos tres pasos emplean las
transformaciones inversas de las primeras tres
transformaciones. Las inversas de las matrices
de rotacin Rx(|) y Ry(-o) son Rx(-|) y Ry(o),
respectivamente. La inversa de la matriz de
traslacin Tr(-x1,-y1,-z1) es Tr(x1,y1,z1).
La transformacin compuesta que representa los
siete pasos est expresada en el producto:
) 1 z , 1 y , 1 x ( Tr ) ( Rx ) ( Ry ) ( Rz ) ( Ry ) ( Rx ) 1 z , 1 y , 1 x ( Tr | o u o |
Proyecciones
PROYECCI N PARALELA U ORTOGONAL
Es el mtodo ms sencillo de proyeccin de
imgenes tridimensionales en dos
dimensiones consiste en descartar una de las
coordenadas: x, y o z.
En este caso consideremos eliminaremos la
coordenada z , lo cual proyecta las coordenadas
(x,y,z) sobre el plano xy.
La proyeccin de un
punto Q(x,y,z) dentro del
cubo es el punto
Q(xp,yp) en el plano xy
donde una lnea que pasa
por Q y que es paralela
al eje z interseca el
plano xy. Estas lneas
paralelas se conocen
como proyectores.
y yp
x xp
=
=
Entonces:
Las proyecciones paralelas tienen la propiedad de que
las lneas rectas permanecen como tales. Por ello, slo
se necesita proyectar los extremos de una recta en tres
dimensiones, para luego dibujar la lnea bidimensional
entre estos puntos.
La principal desventaja de la proyeccin paralela es
la carencia de informacin en torno a la
profundidad del objeto.
Proyecciones
PROYECCI N EN PERSPECTI VA
La proyeccin en perspectiva aumenta el realismo
de una imagen a travs de la impresin de
profundidad. Las partes de la imagen que estn lejos
de la mirada del observador se dibujan ms pequeas
que las del frente.
PROYECCI N EN PERSPECTI VA
Supongamos que el plano de proyeccin es paralelo al
plano xy a una distancia D del punto de convergencia
denominado centro de proyeccin.
Usaremos un sistema de coordenadas de mano
izquierda para el desarrollo del mtodo.
Sea Q = (x1 , y1 , z1) un punto que se proyecta al
punto Q = (xp , yp , D) sobre el plano de proyeccin.
La lnea que une el centro de proyeccin, (0,0,0), y el
punto Q tiene las ecuaciones paramtricas.
t z1 z
real nmero un es t donde t 1 y y
t 1 x x
=
=
=
El punto proyectado (xp , yp , D) se halla sobre esta
recta y tiene z = D.
De aqu:
t 1 z D =
1 z
D
t =
o
Sustituyendo el valor de t en las ecuaciones previas, se
obtienen los valores del punto proyectado:
1 z
1 y
D py
1 z
1 x
D px
=
=
La segunda frmula se deduce por la semejanza de
tringulos.
Observando las vistas de planta y lateral de la figura
mostrada, tenemos:
1 z
1 x
D
xp
=
1 z
1 y
D
yp
=
1 z
1 y
D yp
1 z
1 x
D xp
=
=
Se puede efectuar la perspectiva utilizando una
matriz de perspectiva:
(
(
(
(
(

=
0 0 0 0
D
1
1 0 0
0 0 1 0
0 0 0 1
Per
pero, los dos primeros trminos resultantes se debe dividir
por el cuarto trmino obtenido:
| | ' Q
D
z
z y x Per 1 z y x =
(

=
| | ' Q
D
z
z y x Per 1 z y x =
(

=
Para calcular el punto proyectado (xp,yp), es
necesario dividir el primero y segundo elementos
de Q entre su cuarto elemento:
z
y
D py
z
x
D px
=
=

Vous aimerez peut-être aussi