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;
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;