Revision: 8706
http://sourceforge.net/p/fudaa/svn/8706
Author: deniger
Date: 2014-05-20 01:23:12 +0000 (Tue, 20 May 2014)
Log Message:
-----------
ajout nouveau variable pour Mascaret
Modified Paths:
--------------
trunk/framework/ctulu-bu/src/main/java/com/memoire/dja/DjaTransformData.java
Modified: trunk/framework/ctulu-bu/src/main/java/com/memoire/dja/DjaTransformData.java
===================================================================
--- trunk/framework/ctulu-bu/src/main/java/com/memoire/dja/DjaTransformData.java 2014-05-20 00:55:46 UTC (rev 8705)
+++ trunk/framework/ctulu-bu/src/main/java/com/memoire/dja/DjaTransformData.java 2014-05-20 01:23:12 UTC (rev 8706)
@@ -60,17 +60,22 @@
}
public int getScaledX(MouseEvent _evt, boolean applyTranslation) {
+ final int x = _evt.getX();
+ return getScaledX(applyTranslation, x);
+ }
+
+ protected int getScaledX(boolean applyTranslation, final int x) {
if (applyTranslation) {
if (scale == 0) {
- return _evt.getX() - getTranslateX();
+ return x - getTranslateX();
} else {
- return (int) ((_evt.getX()) / scale) - getTranslateX();
+ return (int) ((x) / scale) - getTranslateX();
}
}
if (scale == 0) {
- return _evt.getX();
+ return x;
} else {
- return (int) ((_evt.getX()) / scale);
+ return (int) ((x) / scale);
}
}
@@ -105,17 +110,22 @@
}
public int getScaledY(MouseEvent _evt, boolean applyTranslation) {
+ final int y = _evt.getY();
+ return getScaledY(applyTranslation, y);
+ }
+
+ protected int getScaledY(boolean applyTranslation, final int y) {
if (applyTranslation) {
if (scale == 0) {
- return _evt.getY() - getTranslateY();
+ return y - getTranslateY();
} else {
- return (int) ((_evt.getY()) / scale) - getTranslateY();
+ return (int) ((y) / scale) - getTranslateY();
}
}
if (scale == 0) {
- return _evt.getY();
+ return y;
} else {
- return (int) ((_evt.getY()) / scale);
+ return (int) ((y) / scale);
}
}
@@ -134,14 +144,17 @@
}
public void zoom(int startScreenX, int startScreenY, int endScreenX, int endScreenY, int widthScreen, int heightScreen) {
- double wRatio = widthScreen / Math.abs(endScreenX - startScreenX);
- double hRatio = heightScreen / Math.abs(endScreenY - startScreenY);
-
+ double wRatio = widthScreen / Math.abs((endScreenX - startScreenX) / scale);
+ double hRatio = heightScreen / Math.abs((endScreenY - startScreenY) / scale);
+ int x = getScaledX(true, startScreenX);
+ int y = getScaledY(true, startScreenY);
translateX = 0;
translateY = 0;
scale = (int) Math.min(wRatio, hRatio);
- translateX = -(int) (startScreenX);
- translateY = -(int) (startScreenY);
+// x = getUnScaledX(x, true);
+// y = getUnScaledY(y, true);
+ translateX = -(int) (x);
+ translateY = -(int) (y);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|