traslacion

Páginas: 6 (1308 palabras) Publicado: 26 de febrero de 2015
TUTORIAL | Transformaciones: Rotación, Traslación y Escala
Anteriormente hemos trabajado con las herramientas que nos proporciona la clase Graphics para el manejo de gráficos. Sin embargo, el alcance de la clase Graphics se limita únicamente al dibujo de los gráficos en la pantalla lo cual puede llegar a complicar y limitar el trabajo sobre todo cuando queremos y necesitamos darle mayordinamismo a los gráficos, moviéndolos a lo largo de la pantalla o deformándolos, como en el caso de un videojuego. Afortunadamente para nosotros Java cuenta con una extensión a la clase Graphics la cual aparte de dibujar en la pantalla nos permite escalar, rotar y trasladar nuestros gráficos, la clase Graphics2D.
Clase Graphics2D
La clase Graphics2D es una extensión de la clase Graphics de la libreríaawt. Esta incorpora todas las herramientas para gráficos que la clase Graphics incluye y proporciona herramientas avanzadas para gráficos de dos dimensiones. Permite, entre otras funciones, determinar el tipo de trazo, el ancho del trazo, pintar con gradientes de color y con patrones, la incorporación de elementos geométricos de dos dimensiones(puntos, líneas, curvas, rectángulos y elipses, entreotros) incluidos en el paquete geom de la librería awt, y la aplicación de transformaciones afines a nuestros gráficos.
Debido a que la clase Graphics2D es una clase abstracta los objetos de esta clase no pueden ser directamente creados. Para crear un objeto gráfico Graphics2D necesitamos tomar la referencia de un objeto gráfico de algún componente o alguna imagen. Esto lo podemos lograrconvirtiendo el objeto gráfico Graphics(g) que recibe el método paint() como parámetro mediante la siguiente instrucción:
Graphics2D g2d = (Graphics2D) g;
En este tutorial haremos uso de las herramientas de la clase Graphics que ya conocemos y nos enfocaremos en la aplicación de transformaciones afines que la clase Graphics2D nos facilita. Pero antes de empezar nos preguntaremos ¿qué esunatransformación afín? No entraremos muy a fondo dentro de este tema pero basta para nosotros con saber que una transformación afín es un elemento de la geometría que nos permite transformar una figura conservando siempre las características de la figura original. Esto quiere decir que si por ejemplo tenemos un cuadro y aplicamos una transformación, todas sus líneas seguirán siendo paralelas unas a otras y no sedeformarán y el punto medio de la figura seguirá siendo el mismo. Entre estas destacan la rotación, la traslación y la escala que son las principales transformaciones con las cuales la clase Graphics2D nos permite trabajar. Para esto el objeto gráfico cuenta con una matriz de transformación denominada Transform la cual maneja las transformaciones de la clase AffineTransform que sean aplicadas.Aplica un transformación de escala a la matriz de transformación del objeto Graphics2D :
 
        scale(sX, sY);
Donde sX es un valor double que representa el valor por el cual serán escaladas las coordenadas en x y sY es un valor double que representa el valor por el cual será escaldas las coordenadas en y.
Aplica una transformación de rotación a la matriz de transformación del objetoGrahics2D a partir del origen:
 
        rotate(teta);
Donde teta es un valor double que representa el ángulo de rotación en radianes. Con un ángulo teta positivo los puntos rotan a favor de las manecillas del reloj.
Aplica una transformación de rotación a la matriz de transformación del objeto Graphics2D a partir de un punto distinto al origen:
 
        rotate(teta, pX, pY);
Donde teta es unvalor double que representa el ángulo de rotación en radianes, pX y pY son valores double que representan las coordenadas (x, y) del punto de origen de la rotación. Con un ángulo teta positivo los puntos rotan a favor de las manecillas del reloj.
Aplica una transformación de traslación a la matriz de transformación del objeto Graphics2D:
 
        translate(tX, tY);
Donde tX y tY son valores...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Traslación
  • Traslacion
  • Traslacion
  • traslacion
  • Cinemática De Traslación
  • TRASLACION DE FIGURAS
  • Rotación Y Traslación
  • Movimiento de traslación

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS