各位大侠,有谁知道如何做图像旋转?按任意角度如果大家接触过这方面的话,请帮忙下。
谢谢了

解决方案 »

  1.   

    图像旋转需要了解一下仿射变换,Java中对应的实现为
    java.awt.geom.AffineTransform
    对应的图像处理类应该是
    java.awt.image.AffineTransformOp
      

  2.   

    PlanarImage currImage = ***
    ParameterBlock pb = new ParameterBlock();
    pb.addSource(currImage);
    pb.add(null).add(null).add(new Float(mRotation)).add(null);
    currImage = JAI.create("rotate", pb);
      

  3.   

    获得图像旋转度:
    jSlider.addChangeListener(new ChangListener(){
      public void  stateChanged(ChangeEvent cs){
         int  value=((JSlider) ce.getSource()).getValue();
         double angle =(float)value/180*Math.PI;
          imagePane.ratoteImage((float)angle);
    }
    });
      

  4.   

    旋转实现:
      AffineTransform transform= new AffineTransform();
      transform.rotate(angle, 125, 75);
      AffineTransformOp imageOp=new AffineTransformOp(transform, null);
      imageOp.filter(orginalBufImage, fiteredBufImage);
     
    OK!