miércoles, 19 de septiembre de 2012


Resumen transformaciones geométricas

2. Transformaciones geométricas

Un paquete gráfico permite al usuario especificar que parte de una imagen definida se debe visualizar y dónde esta parte se debe colocar en el dispositivo de visualización. Cualquier sistema de coordenadas que sea conveniente, referido al sistema de referencia de coordenadas del mundo, se puede usar para definir la imagen. En el caso de las imágenes bidimensionales, una vista se selecciona especificando una región del plano xy que contiene la imagen total o cualquier parte de ella.

Un usuario puede seleccionar una única zona para visualización, o varias zonas para visualización simultánea o para una secuencia animada panorámica a través de una escena.

2.1 Transformaciones Bidimensionales

Traslación

Se aplica una traslación en un objeto para cambiar su posición a lo largo de la trayectoria de una línea recta de una dirección de coordenadas a otra. Convertimos un punto bidimensional al agregar las distancias de traslación, t x y t y a la posición de coordenadas original (x , y) para mover el punto a una nueva posición (x’ , y’ ).2.1.x’ = x + tx’y’ = y + ty.

El par de distancia de traslación (t x’,t y) se llama vector de traslación o vector de cambio. La traslación es una transformación de cuerpo rígido que mueve objetos sin deformarlos, es decir, se traslada cada punto del objeto la misma distancia. Se traslada un segmento de línea recta al aplicar la ecuación de transformación 2.3 en cada uno de los extremos de la línea y se vuelve a trazar la línea entre las nuevas posiciones de los extremos.

Rotación

Se aplica una rotación bidimensional en un objeto al cambiar su posición a lo largo de la trayectoria de una circunferencia en el plano de xy. para generar una rotación, especificamos un ángulo de rotación θ y la posición (x r , y r ) del punto de rotación (o punto pivote) en torno al cual se gira el objeto.

Escalación

Una transformación de escalación altera el tamaño de un objeto. Se puede realizar esta operación para polígonos al multiplicar los valores de coordenadas (x, y) de cada vértice por los factores de escalación s x y s y para producir las coordenadas transformadas (x’, y’):2.10.x '=x ·s x ,y'=y·s y

El factor de escalación s x escala objetos en la dirección de x mientras que el factor de escalación s y lo hace en dirección de y. También se pueden expresar las ecuaciones de transformación en forma matricial.

2.2 Coordenadas homogeneas y representacion matricial.

En matemáticas se utiliza el término coordenadas homogéneas para referirse al efecto de esta representación de ecuaciones cartesianas. Cuando se convierte un punto cartesiano (x, y) a una representación homogénea (x h , y h , h ) las ecuaciones que contienen x y y como f (x, y) = 0, se convierten en ecuaciones homogéneas en los tres parámetros x h , y h ,h. Esto sólo significa que si se sustituye cada uno de los tres parámetros con cualquier valor v veces ese parámetro, el valor v se puede factorizar fuera de las ecuaciones. Expresar posiciones en coordenadas homogéneas nos permite representar todas las ecuaciones de transformación geométrica como multiplicaciones de matriz. Se representan las coordenadas con vectores de columna de tres elementos y las operaciones de transformación se expresan como matrices de 3 por 3.

Las representaciones de matriz o representaciones matriciales son métodos estándar para implementar transformaciones en sistemas de gráficas. En muchos sistemas, las funciones de rotación y escalación producen transformaciones con respecto del origen de las coordenadas como en las ecuaciones.

2.3 Composición de transformaciones bidimensionales.

La creación de productos de matrices de transformación a menudo se conoce como concatenación o composición de matrices.

Rotación del punto pivote general.

Con un paquete gráfico que sólo ofrezca una función de rotación para girar objetos con respecto del origen de las coordenadas, podemos generar casi cualquier punto pivote seleccionado (x r , y r ) al realizar la siguiente secuencia de operaciones de traslación-rotación-traslación:
  1. Traslade el objeto de modo que se mueva la posición del punto pivote al origen de las coordenadas.
  2. Gire el objeto con respecto del origen de las coordenadas.
  3. Traslade el objeto de manera que se regrese el punto pivote a su posición original.
Escalacion del punto fijo general.

La siguiente figura ilustra una secuencia de transformación para producir escalación con respecto de una posición fija seleccionada (x f , y f ) al utilizar una función de escalación que sólo puede escalar en relación con el origen de las coordenadas.
  1. Traslade el objeto de modo que el punto fijo coincida con el origen de las coordenadas.
  2. Escale el objeto con respecto del origen de las coordenadas.
  3. Utilice la traslación inversa del paso 1 para regresar el objeto a su posición original.
2.4.Transformación ventana-área de vista.
Algunos paquetes gráficos permiten que el programador especifique coordenadas de primitivas de salida en un sistema de coordenadas de mundo de punto flotante, usando las unidades que sean relevantes para el programa de aplicación: angstroms, micras, metros,millas, años luz, etcétera. Se emplea el término de mundo porque el programa de aplicación representa un mundo que se crea o presenta interactivamente para el usuario:

Como las primitivas de salida se expresan en coordenadas de mundo, hay que indicar al paquete de subrutinas gráficas cómo establecer la correspondencia entre las coordenadas de mundo y las coordenadas de pantalla (usaremos el término específico coordenadas de pantalla para relacionar este análisis específicamente con SRGP, pero podrían usarse dispositivos de impresión, en cuyo caso sería más apropiado el término coordenadas de dispositivo). Esta correspondencia se puede efectuar si el programador de la aplicación proporciona al paquete gráfico una matriz de transformación para la correspondencia.

2.5.Transformaciones de composición general y de eficiencia computacional

Una transformación bidimensional general, que representa una combinación de traslaciones, rotaciones y escalaciones se puede expresar como Los cuatro elementos rs ij son los términos multiplicativos de rotación -escalación en la transformación que implican sólo ángulos de rotación y factores de escalación.

Los elementos trs x y trs y son los términos de traslación que contienen combinaciones de distancias de traslación, coordenadas de punto pivote y de punto fijo, así como de ángulos de rotación y parámetros de escalación. Por ejemplo, si debe escalar, girar un objeto con respecto de las coordenadas de su centroide (x c , y c ) y después trasladarlo.


La propiedad ortogonal de las matrices de rotación es útil para realizar una matriz de rotación cuando conocemos la orientación final de un objeto en lugar de la cantidad de rotación angular necesaria para colocar el objeto en esa posición. Las direcciones para la orientación deseada de un objeto se podrían determinar mediante la alineación de ciertos objetos en escena o mediante posiciones seleccionadas en la escena.

En animaciones y otras aplicaciones que implican muchas transformaciones repetidas y ángulos de rotación pequeños, podemos utilizar aproximaciones y cálculos repetitivos para reducir los cálculos en las ecuaciones de transformación compuesta. Cuando el ángulo de rotación es pequeño, se pueden sustituir las funciones trigonométricas con valores de aproximación con base en los primeros términos de sus expansiones de series de potencia. Para ángulos bastante pequeños (menores a 10°)cos θ es de alrededor de 1 sen θ tiene un valor muy cercano al valor de θ en radianes.

Las transformaciones compuestas a menudo implican cálculos de la matriz inversa. Por ejemplo, las secuencias de transformación para las direcciones de escalación general y para reflexiones y recortes se pueden describir con componentes de rotación inversa.

2.6.Representación matricial de transformaciones tridimensionales

Así como las transformaciones bidimensionales se pueden representar con matrices de 3 X 3 usando coordenadas homogéneas, las transformaciones tridimensionales se pueden representar con matrices de 4 X 4, siempre y cuando usemos representaciones de coordenadas homogéneas de los puntos en el espacio tridimensional. Así, en lugar de representar un punto como (x, y, z ), lo hacemos como (x, y, z, W ), donde dos de estos cuádruplos representan el mismo punto si uno es un multiplicador distinto de cero del otro: no se permite el cuádruplo (0, 0, 0, 0). Como sucede en el espacio bidimensional, la representación estándar de un punto (x, y, z, W ) con W ≠ 0 se indica (x/W, y/W, z/W, 1).

La transformación de un punto a esta forma se denomina homogeneización, igual que antes. Además los puntos cuya coordenada W es cero se llaman puntos en el infinito. También existe una interpretación geométrica. Cada punto en el espacio tridimensional se representa con una línea que pasa por el origen en el espacio de cuatro dimensiones, y las representaciones homogeneizadas de estos puntos forman un subespacio tridimensional de un espacio de cuatro dimensiones definido por la ecuación W = 1.

El sistema de coordenadas tridimensionales que se usará en los siguientes ejemplos es de mano derecha como se ilustra en la figura 2.16- Por convención las rotaciones positivas en el sistema de mano derecha son tales que, al ver hacia un eje positivo desde el origen, una rotación de 90˚ en sentido contrario al giro de las manecillas del reloj transformará un eje positivo en otro.

2.7.Composición de transformaciones tridimensionales

En este apartado se analizará la forma de componer matrices de transformación tridimensionales usando un ejemplo. El objetivo es transformar los segmentos de línea dirigida P1 P2 y P1 P3 de su posición inicial en la parte (a) a su posición final en la parte (b). De esta manera, el punto P1 se trasladará al origen P1 P2 quedará en el eje positivo y P1 P3 quedará en la mitad del eje positivo del plano (x, y). Las longitudes de las líneas no se verán afectadas por la transformación. Se presentan dos formas de lograr la transformación deseada. El primer método es componer las transformaciones primitivas T,Rx, R y y Rz. Este método, aunque es algo tedioso, es fácil de ilustrar y su comprensión nos ayudará en nuestro conocimiento de las transformaciones. El segundo método, que utiliza las propiedades de las matrices ortogonales especiales que se analiza en la sección anterior, se explica de manera mas breve pero es más abstracto.

Las transformaciones geométricas básicas son la traslación, la rotación y la escalación. La traslación mueve un objeto con una trayectoria en línea recta de una posición a otra. La rotación mueve un objeto de una posición a otra a lo largo de una trayectoria circular sobre un eje de rotación específico. Para aplicaciones bidimensionales, la trayectoria de rotación se encuentra en el plano xy sobre un eje que es paralelo al eje z.

Las transformaciones de cambio de escala cambian las dimensiones de un objeto con respecto a una posición fija. Podemos expresar las transformaciones bidimensionales como operadores de matrices de 3 por 3 y las transformaciones tridimensionales como operadores de matrices de 4 por 4, de tal forma que esas secuencias de transformaciones pueden concatenarse dentro de una matriz compuesta. En general, podemos representar tanto transformaciones bidimensionales como tridimensionales con matrices de 4 por 4.

Representar operaciones de transformaciones geométricas con matrices de formulación eficiente, en tanto en cuanto nos permite reducirlos cálculos aplicando una matriz compuesta a una descripción de un objeto para obtener suposición transformada. Para encontrar la matriz de la posición transformada expresamos posiciones de coordenadas como matrices de columna. Elegimos la representación de matriz columna para puntos de coordenadas porque ese es el convenio matemático estándar y, muchos paquetes gráficos siguen dicha convención. Nos referimos a una matriz de tres o cuatro elementos (vector) como una representación de coordenadas homogéneas.


No hay comentarios:

Publicar un comentario