我有一组在图形上下文中绘制矢量的 Java2D 调用。我希望图像的大小翻倍,然后旋转 90 度。
我正在使用以下代码来执行此操作:
Graphics2D g2 = // ... get graphics 2d somehow ...
AffineTransform oldTransform = g2.getTransform();
AffineTransform newTransform = (AffineTransform)oldTransform.clone();
newTransform.concatenate(AffineTransform.getTranslateInstance(x1, x2));
newTransform.concatenate(AffineTransform.getScaleInstance((double)newW/(double)iconW, (double)newH/(double)iconH));
newTransform.concatenate(AffineTransform.getRotateInstance(Math.toRadians(rotationAngle), (double)iconW/2.0d, (double)iconH/2.0d));
// ... do my drawing ...
这会旋转和缩放,但是,比例并没有按照我想要的方式应用。就好像它在缩放之前旋转,从而使图像在错误的轴上变宽。
有一个更好的方法吗?