Revert "Adapt editor label features to the not scaled/translated coord" 92/12892/2
Vincent COUVERT [Fri, 11 Oct 2013 07:01:42 +0000 (09:01 +0200)]
This reverts commit 0776c7fc89313bfa83e6f91c625d3ea9d97e8470.

Change-Id: Ifb7a4bdb3cd02d05d00e1c60a32a18845d4dad22

scilab/modules/gui/src/java/org/scilab/modules/gui/editor/EntityPicker.java
scilab/modules/gui/src/java/org/scilab/modules/gui/editor/GEDPicker.java
scilab/modules/gui/src/java/org/scilab/modules/gui/editor/LabelHandler.java

index 78d26b6..6effc1f 100644 (file)
@@ -396,7 +396,6 @@ public class EntityPicker {
         if (axes == null) {
             return null;
         }
-        Axes axesObj = AxesHandler.getAxesFromUid(axes);
         Double[] corners;
         Double radAngle = 0.;
         int rotate = 0;
@@ -412,8 +411,6 @@ public class EntityPicker {
                                 (Boolean)GraphicController.getController().getProperty(axes, GraphicObjectProperties.__GO_Y_AXIS_LOG_FLAG__)
                              };
 
-        double[][] factors = axesObj.getScaleTranslateFactors();
-
         for (Integer i = 0; i < 4; i++) {
             corners = (Double[])GraphicController.getController().getProperty(label[i], GraphicObjectProperties.__GO_CORNERS__);
             radAngle = (Double)GraphicController.getController().getProperty(label[i], GraphicObjectProperties.__GO_FONT_ANGLE__);
@@ -426,10 +423,6 @@ public class EntityPicker {
             point[2] = 1.0;
             coord = CallRenderer.get2dViewFromPixelCoordinates(axes, point);
 
-            coord[0] = (coord[0] *  factors[0][0]) + factors[1][0];
-            coord[1] = (coord[1] *  factors[0][1]) + factors[1][1];
-            coord[2] = (coord[2] *  factors[0][2]) + factors[1][1];
-
             coord[0] = CommonHandler.InverseLogScale(coord[0], logScale[0]);
             coord[1] = CommonHandler.InverseLogScale(coord[1], logScale[1]);
 
index 2de2b18..cd06ca9 100644 (file)
@@ -241,7 +241,7 @@ public class GEDPicker {
     /**
      * Surface picker, given a plot3d/fac3d/grayplot/matplot object it checks if the click
      * was over it
-     *
+     * 
      * @param obj The given surface object uid
      * @param position Mouse click position in pixels
      * @return true if picked the surface otherwise returns false
@@ -250,13 +250,13 @@ public class GEDPicker {
 
         String figure = (String)GraphicController.getController().getProperty(obj, GraphicObjectProperties.__GO_PARENT_FIGURE__);
         double[] mat = DrawerVisitor.getVisitor(figure).getAxesDrawer().getProjection(axesUID).getMatrix();
-        double[][] factors = axes.getScaleTranslateFactors();
+       double[][] factors = axes.getScaleTranslateFactors();
 
         Vector3d v0 = AxesDrawer.unProject(axes, new Vector3d(1.0f * position[0], 1.0f * position[1], 0.0));
         Vector3d v1 = AxesDrawer.unProject(axes, new Vector3d(1.0f * position[0], 1.0f * position[1], 1.0));
-        v0 = new Vector3d((v0.getX() - factors[1][0]) / factors[0][0], (v0.getY() - factors[1][1]) / factors[0][1], (v0.getZ() - factors[1][2]) / factors[0][2]);
-        v1 = new Vector3d((v1.getX() - factors[1][0]) / factors[0][0], (v1.getY() - factors[1][1]) / factors[0][1], (v1.getZ() - factors[1][2]) / factors[0][2]);
-
+       v0 = new Vector3d((v0.getX() - factors[1][0]) / factors[0][0], (v0.getY() - factors[1][1]) / factors[0][1], (v0.getZ() - factors[1][2]) / factors[0][2]);
+       v1 = new Vector3d((v1.getX() - factors[1][0]) / factors[0][0], (v1.getY() - factors[1][1]) / factors[0][1], (v1.getZ() - factors[1][2]) / factors[0][2]);
+       
         Vector3d Dir = v0.minus(v1).getNormalized();
         Z = 2.0;
         double curZ = SurfaceData.pickSurface(obj, v0.getX(), v0.getY(), v0.getZ(),
@@ -311,7 +311,6 @@ public class GEDPicker {
 
         Double[] corners = (Double[])GraphicController.getController().getProperty(obj, GraphicObjectProperties.__GO_CORNERS__);
         Double radAngle = (Double)GraphicController.getController().getProperty(obj, GraphicObjectProperties.__GO_FONT_ANGLE__);
-        double[][] factors = axes.getScaleTranslateFactors();
         int rotate = ((int)((radAngle * 2) / Math.PI)) % 2;
         if (rotate == 1) {
 
@@ -329,10 +328,6 @@ public class GEDPicker {
         boolean[] logScale = {         (Boolean)GraphicController.getController().getProperty(axesUID, GraphicObjectProperties.__GO_X_AXIS_LOG_FLAG__),
                                 (Boolean)GraphicController.getController().getProperty(axesUID, GraphicObjectProperties.__GO_Y_AXIS_LOG_FLAG__)
                              };
-        coord[0] = (coord[0] *  factors[0][0]) + factors[1][0];
-        coord[1] = (coord[1] *  factors[0][1]) + factors[1][1];
-        coord[2] = (coord[2] *  factors[0][2]) + factors[1][1];
-
         coord[0] = CommonHandler.InverseLogScale(coord[0], logScale[0]);
         coord[1] = CommonHandler.InverseLogScale(coord[1], logScale[1]);
 
index 9494116..5e87fc5 100644 (file)
@@ -130,7 +130,7 @@ public class LabelHandler {
         Double[] labelPos;
         double[] pixBotton  = { 0., 0., 0.}, pixTop = { 0., 0., 0.};
         Double[] bounds = ax.getDataBounds();
-        Double  width, height, length, delta, min, max, unscaledMin, unscaledMax, temp;
+        Double  width, height, length, delta, min, max, temp;
         int flag;
 
         switch (axis) {
@@ -153,7 +153,6 @@ public class LabelHandler {
         }
 
         labelPos  = (Double[])GraphicController.getController().getProperty(label, GraphicObjectProperties.__GO_POSITION__);
-        double[][] factors = ax.getScaleTranslateFactors();
 
         switch (axis) {
             case __X__:
@@ -163,8 +162,6 @@ public class LabelHandler {
                 pixTop[0] = bounds[1];
                 pixTop[1] = labelPos[1];
                 pixTop[2] = labelPos[2];
-                unscaledMin = bounds[0] * factors[0][0] + factors[1][0];
-                unscaledMax = bounds[1] * factors[0][0] + factors[1][0];
                 min = bounds[0];
                 max = bounds[1];
                 break;
@@ -175,8 +172,6 @@ public class LabelHandler {
                 pixTop[0] = labelPos[0];
                 pixTop[1] = bounds[3];
                 pixTop[2] = labelPos[2];
-                unscaledMin = bounds[2] * factors[0][1] + factors[1][1];
-                unscaledMax = bounds[3] * factors[0][1] + factors[1][1];
                 min = bounds[2];
                 max = bounds[3];
                 break;
@@ -187,8 +182,6 @@ public class LabelHandler {
                 pixTop[0] = labelPos[0];
                 pixTop[1] = labelPos[1];
                 pixTop[2] = bounds[5];
-                unscaledMin = bounds[4] * factors[0][2] + factors[1][2];
-                unscaledMax = bounds[5] * factors[0][2] + factors[1][2];
                 min = bounds[4];
                 max = bounds[5];
                 break;
@@ -225,30 +218,30 @@ public class LabelHandler {
                 temp = CommonHandler.logScale(labelPos[0], scale) +
                        (delta * ((CommonHandler.logScale(max, scale) - CommonHandler.logScale(min, scale)) / length) * flag);
                 labelPos[0] = CommonHandler.InverseLogScale(temp, scale);
-                if (labelPos[0] < unscaledMin) {
-                    labelPos[0] = unscaledMin;
-                } else if (labelPos[0] > unscaledMax) {
-                    labelPos[0] = unscaledMax;
+                if (labelPos[0] < min) {
+                    labelPos[0] = min;
+                } else if (labelPos[0] > max) {
+                    labelPos[0] = max;
                 }
                 break;
             case __Y__:
                 temp = CommonHandler.logScale(labelPos[1], scale) +
                        (delta * ((CommonHandler.logScale(max, scale) - CommonHandler.logScale(min, scale)) / length) * flag);
                 labelPos[1] = CommonHandler.InverseLogScale(temp, scale);
-                if (labelPos[1] < unscaledMin) {
-                    labelPos[1] = unscaledMin;
-                } else if (labelPos[1] > unscaledMax) {
-                    labelPos[1] = unscaledMax;
+                if (labelPos[1] < min) {
+                    labelPos[1] = min;
+                } else if (labelPos[1] > max) {
+                    labelPos[1] = max;
                 }
                 break;
             case __Z__:
                 temp = CommonHandler.logScale(labelPos[2], scale) +
                        (delta * ((CommonHandler.logScale(max, scale) - CommonHandler.logScale(min, scale)) / length) * flag);
                 labelPos[2] = CommonHandler.InverseLogScale(temp, scale);
-                if (labelPos[2] < unscaledMin) {
-                    labelPos[2] = unscaledMin;
-                } else if (labelPos[2] > unscaledMax) {
-                    labelPos[2] = unscaledMax;
+                if (labelPos[2] < min) {
+                    labelPos[2] = min;
+                } else if (labelPos[2] > max) {
+                    labelPos[2] = max;
                 }
                 break;
             default: