From 948bb83f7e5f581cb99a0aa420a8b8004d75df97 Mon Sep 17 00:00:00 2001 From: erqan Date: Tue, 19 Dec 2017 18:17:45 +0300 Subject: [PATCH] screen isn't square so before and after translation values must be switched... --- src/com/majeur/ars/ScreenPanel.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/com/majeur/ars/ScreenPanel.java b/src/com/majeur/ars/ScreenPanel.java index 8373503..7aedb3a 100644 --- a/src/com/majeur/ars/ScreenPanel.java +++ b/src/com/majeur/ars/ScreenPanel.java @@ -133,7 +133,11 @@ protected void paintComponent(Graphics g) { if (mLandscape) { AffineTransform transform = new AffineTransform(); - transform.rotate(Math.PI / 2, mImage.getWidth() / 2, mImage.getHeight() / 2); + double w = mImage.getWidth() / 2; + double h = mImage.getHeight() / 2; + transform.translate(h, w); + transform.rotate(Math.PI /2); + transform.translate(-w, - h); AffineTransformOp op = new AffineTransformOp(transform, AffineTransformOp.TYPE_BILINEAR); mImage = op.filter(mImage, null); }