| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 
 | import java.awt.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import javax.swing.*;
import java.awt.geom.*;
 
 
 public class Rotation extends JComponent {
   private BufferedImage image;
    double centreDeRotation;
 
   public Rotation(BufferedImage image) throws IOException {
 
   	this.image=image;
   	BufferedImage source = image;
   	BufferedImage transfert = new BufferedImage(source.getHeight(), source.getWidth(), source.getType());
      double centreDeRotation = source.getHeight()/2;
      AffineTransform pivoter = AffineTransform.getRotateInstance(Math.toRadians(90), centreDeRotation, centreDeRotation);
      AffineTransformOp pivoterImage = new AffineTransformOp(pivoter, null);
      pivoterImage.filter(source, transfert);  
      this.image=transfert;
      this.setPreferredSize(new Dimension (image.getHeight(),image.getWidth()));
 
   }
   protected void paintComponent(Graphics g) {
      Graphics2D surface = (Graphics2D)g;
      surface.drawImage(image, 0, 0, null);
      //surface.drawImage(image, 0, 0,this.getWidth(), this.getHeight(), null);
   } 
} |