Transformaciones
Facultad de Ingenieria, Arquitectura y Diseño
Graficación
Transformaciones en 2 dimensiones
Sergio Infante
Graficación
Sistemas de referencia
• Sistema de coordenadas cartesiano
Un punto se ubica especificando las distancias horizontal y vertical al punto de referencia (origen) y
. P(px,py)
px o py x
1
Sistemas de referencia
•Sistema polar
Un punto se ubica especificando la distancia del punto al origen (radio) y el angulo formado por una linea trazada desde el punto hasta el origen y un eje hotizontal
.P(r, θ)
r θ
Sistemas de referencia
• Transformación de Polar a Cartesiano
– px= r cos θ, py=r sin θ
• Transformación Cartesiano a Polar
– r= px 2 + py 2 , θ=tan-1(py/px)
2
Transformaciones en 2D
• Muyutilizadas para la modificación de imágenes vectoriales • La mayoría de las imágenes vectoriales contienen polígonos.
Imágenes Vectoriales
• Se considera que una imagen vectorial es un conjunto de polígonos o lineas • Un polígono está definido por sus vertices
V2(x2,y2) V2(x2,y2)
V1(x1,y1) V1(x1,y1)
V3(x3,y3)
3
Imágenes Vectoriales
• Un punto lo podemos representar como unvector renglón
V= x y
• Un polígono puede ser representado como una matriz, o arreglo de vectores renglón
P= x1 y1 x2 y2 x2 y2 ..... xn yn
Transformación geométrica
• Una transformación es una operación que cambia las características de un polígono o figura geométrica
Y Y
• Forma
Y
P P
X
X
Y P’
• Posición
Y
P
X
X
Y
P’
• Tamaño
P
X
X
4Transformaciones Geométricas Basicas
• Modifican características basicas (tamaño y posicion) • A partir de ellas se pueden hacer transformaciones mas complejas • Las transformaciones basicas son: • Traslamiento • Escalamiento • Rotación
Traslamiento
• Modifica la posición de un polígono con respecto al origen • La distancia entre cada uno de los vértices y el origen se modifica uniformemente.
YY
P’
P
Traslamiento
X
X
5
Traslamiento
• Es necesario definir un vector de traslación T, que indica la magnitud y dirección del traslamiento
Y
P’
P T
X
Traslamiento
• Siendo un punto (x,y), y T el vector de traslamiento, (x’,y’), el resultante del traslamiento se calcula:
Y
(x’,y’)
x’ = x + tx y’ = y + ty
T (tx,ty) (x,y)
X
6
Traslamiento• Considerando a P como una matriz y T un vector, la operación de traslamiento es:
P’ = P + T
Y Y P’
P T
Traslamiento T
X
X
Escalamiento
• Modifica la distancia entre cada uno de los vertices del polígono y el origen • Como consecuencia, se modifica el tamaño del polígono
Y Y
P’
P
Escalamiento
X
X
7
Escalamiento
• Es necesario definir un factor deescalamiento S
• La cantidad en que disminuira o aumentará la distancia entre los vertices y el origen • Relación entre la distancia actual y la nueva
• La distancia puede modificarse en cualquiera de las 2 dimensiones, entonces, S puede tener 2 componentes (Sx,Sy)
Escalamiento
• Siendo el punto (x,y), y el factor de escalamiento S=(Sx,Sy), (x’,y’), el resultante del escalamiento, se calcula:
Y(x’,y’)
x’= x·Sx y’= y·Sy
(x,y) y’= y·Sy y
x x’= x·Sx
X
8
Escalamiento
• Para hacer la operación con la matriz P, se define una matriz de escalamiento S
S= Sx 0 0 Sy
• La transformación esta dada por: P’= P x S
Escalamiento
• Escalamiento uniforme
• Sx=Sy
• Escalamiento no uniforme
• Sx≠Sy
• Cuando el factor de escalamiento es negativo, se produce unareflexion sobre los ejes
9
Rotación
• Cambia la posición de un polígono, tanto en ubicación como en orientación.
Y P’ P
X
• En la forma básica de esta operación se considera el origen como centro de rotación
Rotación
• Es necesario especificar un ángulo de rotación
Y
α
X
Rotación positiva
Rotación negativa
10
Rotación
• Teniendo el punto (x,y) y el angulo α,...
Regístrate para leer el documento completo.