Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Lopardo en 23 Mayo 2006, 22:21 pm



Título: Girar Imagen en Java
Publicado por: Lopardo en 23 Mayo 2006, 22:21 pm
Hola... Mi pregunta es como girar una imagen y que permanezca con el mismo centro... que puedo utilizar?... he visto que en Graphics2D hay algo de rotar y trasladar, pero no se como usarlo.. alguien sabra como es que se hace lo que quiero?...

Saludos


Título: Re: Girar Imagen en Java
Publicado por: 1mpuls0 en 21 Octubre 2008, 03:12 am
Hola a mi tambie me gustaria saber como girar imagenes o figuras en Java, o por lo menos ver algun ejemplo para guiarme por que tengo que hacer un programa sobre esto!!

gracias!!

saludos!! :rolleyes:


Título: Re: Girar Imagen en Java
Publicado por: carolmuriel en 21 Octubre 2008, 03:26 am
seria como si estuvieras en psd pero mas complicado debes usar el metodo  setTimeout( ) que se le llama con dos argumentos  osea el nombre de tu funcion y el tiempo en milisegundos q queres q transcurra  q le indicaras en el argumento numerico  alli el explorador llamara a la funcion. si quieres que esto se repita dentro de la funcion debes porner otro  setTimeout( )  ya q alli es donde se materializa la animacion.

primero tienes q definir las imagenes q van a formar la animacion luego haces tu funcion q cambiara el origen de la imagen q animaras y ya por ultimo la vas a llamar con el  setTimeout( ) haces tu nuevo array, declaras tu variable como global q seria la k iria contando las imagenes, haces la funcion animar y le vas incrementando el tiempo q transcurra con el  setTimeout( ) y listo


Título: Re: Girar Imagen en Java
Publicado por: ~~ en 21 Octubre 2008, 15:34 pm
En java.awt.image.AffineTransformOp tienes todo lo que necesitas. Ejemplo de rotación de imagen sacado de un manual de Java2D:

Código
  1. public void paint(Graphics g) {
  2.    Graphics2D g2 = (Graphics2D)g;
  3.    try {
  4.          InputStream in =
  5.          getClass().getResourceAsStream("../neuschwanstein.jpg");
  6.               JPEGImageDecoder decoder = JPEGCodec.createJPEGDecoder(in);
  7.          BufferedImage image = decoder.decodeAsBufferedImage();
  8.          // Aqui se realiza la transformación
  9.               AffineTransform at = AffineTransform.getRotateInstance(Math.PI/8);
  10.  
  11.          RenderingHints rh =
  12.                new RenderingHints(RenderingHints.KEY_INTERPOLATION,
  13.                        RenderingHints.VALUE_INTERPOLATION_BILINEAR);
  14.          AffineTransformOp atop = new AffineTransformOp(at,rh);
  15.          BufferedImage destino = atop.filter(image, null);
  16.          // Aquí termina el proceso
  17.          g2.drawImage(destino,0,20,this);
  18.          in.close();
  19.  }
  20.  catch (IOException e) {e.printStackTrace();}
  21.  catch (ImageFormatException e) {e.printStackTrace();}
  22. }


Título: Re: Girar Imagen en Java
Publicado por: 1mpuls0 en 24 Octubre 2008, 03:28 am
En java.awt.image.AffineTransformOp tienes todo lo que necesitas. Ejemplo de rotación de imagen sacado de un manual de Java2D:


OK muchas gracias esto ultimo me ha servido...