旋转对象

时间:2013-04-28 05:14:42

标签: java swing rotation awt graphics2d

我知道如何旋转图像但是如何旋转实际的对象?我无法使用g2d.rotate();,因为我使用paint()方法绘制了多个内容,而我只想要其中一个旋转。

2 个答案:

答案 0 :(得分:1)

  • 由于您的是Swing应用程序,因此您不希望使用paint(...)方法,而是使用JComponent派生类的paintComponent(...)方法。
  • 要旋转单个对象,请考虑通过调用原始文件上的create()创建Graphics对象的副本,在新的Graphics实例上调用rotate(...),使用新的Graphics2D实例绘制旋转的项目,并且然后处理复制的Graphics对象。

答案 1 :(得分:1)

您可以使用java.awt.geom.AffineTransform类转换图像或实现自己的旋转矩阵。

旋转实际物体意味着您知道其当前位置,方向和枢轴点。旋转矩阵就是解决方案。

http://en.wikipedia.org/wiki/Rotation_matrix