【发布时间】:2015-02-22 19:50:17
【问题描述】:
我问的不是 AffineTransform 是如何工作的,而是如何使用它的 translate 方法。
我多次阅读 API,但仍然不明白它是如何工作的。
public void translate(double tx,double ty)
将此转换与平移转换连接。这相当于调用 concatenate(T),其中 T 是由以下矩阵表示的 AffineTransform:
[ 1 0 tx ] [ 0 1 ty ] [ 0 0 1 ]
问题:
affineTransform.translate(100, 0) 以某种方式将图像向右移动 +100 像素,向底部移动 +100 像素。为什么会这样?
如果我需要经常移动图像,是否可以使用 translate() 来移动图像?如果不是,在框架中移动我的旋转/旋转图像的推荐方法/方式是什么?
【问题讨论】:
-
1- 通常是的,它应该移动 100x 和 0y,为什么它不移动需要一个可运行的示例来确定。 2-这取决于。通常,我会在应用它或保留原始副本之前创建图形上下文的副本,否则,您需要将其反转。请记住,您申请的任何翻译都是累积的
标签: java swing awt affinetransform