]> gerrit.simantics Code Review - simantics/district.git/blobdiff - org.simantics.district.network.ui/src/org/simantics/district/network/ui/adapters/DistrictNetworkVertexElement.java
Show detailed geometry on further zoom distance
[simantics/district.git] / org.simantics.district.network.ui / src / org / simantics / district / network / ui / adapters / DistrictNetworkVertexElement.java
index d873835c878bc14916d977153dad4379d09b05aa..1ff5eefa407c7c75a3e978b9531232a23c067bdd 100644 (file)
@@ -22,7 +22,6 @@ import org.simantics.g2d.element.handler.impl.SimpleElementLayers;
 import org.simantics.scenegraph.INode;
 import org.simantics.scenegraph.g2d.G2DParentNode;
 import org.simantics.scenegraph.g2d.nodes.SVGNode;
-import org.simantics.scenegraph.utils.GeometryUtils;
 import org.simantics.utils.datastructures.hints.IHintContext.Key;
 import org.simantics.utils.datastructures.hints.IHintContext.KeyOf;
 
@@ -97,17 +96,16 @@ public class DistrictNetworkVertexElement {
             ICanvasContext ctx = DiagramNodeUtil.getCanvasContext(node);
             AffineTransform canvasTransform = ctx.getHintStack().getHint(Hints.KEY_CANVAS_TRANSFORM);
             // for some reason PickContextImpl expands the rectangle by 0.001 (too much) - let's counter it
-            double counterExpansion = 0.001;
-            double x = boundsInLocal.getX() + counterExpansion;
-            double y = boundsInLocal.getY() + counterExpansion;
+            double x = boundsInLocal.getX();
+            double y = boundsInLocal.getY();
             double scaledWidth = boundsInLocal.getWidth();
             double scaledHeight = boundsInLocal.getHeight();
             if (canvasTransform != null) {
-                scaledWidth = boundsInLocal.getWidth() / canvasTransform.getScaleX() / 10000.0;
-                scaledHeight= boundsInLocal.getHeight() / canvasTransform.getScaleY() / 10000.0;
+                scaledWidth = boundsInLocal.getWidth() / canvasTransform.getScaleX();
+                scaledHeight= boundsInLocal.getHeight() / canvasTransform.getScaleY();
             }
-            double width = scaledWidth - 2*counterExpansion;
-            double height = scaledHeight - 2*counterExpansion;
+            double width = scaledWidth;
+            double height = scaledHeight;
             size.setFrame(x, y, width, height);
             
             return size;
@@ -117,9 +115,6 @@ public class DistrictNetworkVertexElement {
         public boolean pickTest(IElement e, Shape s, PickPolicy policy) {
             DistrictNetworkVertexNode node = e.getHint(KEY_DN_VERTEX_NODE);
             Rectangle2D boundsInLocal = node.getBounds();
-            ICanvasContext ctx = DiagramNodeUtil.getCanvasContext(node);
-            AffineTransform canvasTransform = ctx.getHintStack().getHint(Hints.KEY_CANVAS_TRANSFORM);
-            Rectangle2D scaledBounds = new Rectangle2D.Double(boundsInLocal.getX(), boundsInLocal.getY(), boundsInLocal.getWidth() / canvasTransform.getScaleX() * 2, boundsInLocal.getHeight() / canvasTransform.getScaleY() * 2);
             Rectangle2D bounds = getBounds(s);
             switch (policy) {
             case PICK_CONTAINED_OBJECTS: