旋转BufferedImage并将其移动到某个位置

时间:2014-02-22 02:12:17

标签: java swing rotation jframe bufferedimage

我已经阅读了许多BufferedImage旋转帖子,发现旋转它的方法是使用AffineTransform(at),并使用at.rotate(double,int,int)。我得到了它的工作,我可以把它和所有,但我想移动它,所以它显示在屏幕上的不同位置。为此,我使用了at.translate(int,int)。但是,int不与我正在使用的实际JFrame对齐,并且它在旋转的点上旋转不同的点。翻译如何与rotate方法相关?这是我尝试使用的代码......

public void draw(Graphics2D g){
    counter++;
    g.drawImage(animation.getImage(), (int)x, (int)y, null);
    if (counter * .05 > Math.PI * 2)
        counter = 0;
    g.rotate(counter * .05, test.getWidth() / 2, test.getHeight() / 2);
    g.drawImage(test, at, null);
    g.rotate(-counter * .05, test.getWidth() / 2, test.getHeight() / 2);
}

0 个答案:

没有答案