X-Git-Url: https://gerrit.simantics.org/r/gitweb?a=blobdiff_plain;f=org.simantics.district.network.ui%2Fsrc%2Forg%2Fsimantics%2Fdistrict%2Fnetwork%2Fui%2Fnodes%2FDistrictNetworkNodeUtils.java;h=c48693ac4470b94122bf6f47c13a87a7031a9b01;hb=cb2ebef6cbe572f646082952f57bb69135f308bd;hp=8a369e26391d9efb77e458891824617f9a9c9231;hpb=db34439af303d45eb67cee78cb3f68c9b6666da4;p=simantics%2Fdistrict.git diff --git a/org.simantics.district.network.ui/src/org/simantics/district/network/ui/nodes/DistrictNetworkNodeUtils.java b/org.simantics.district.network.ui/src/org/simantics/district/network/ui/nodes/DistrictNetworkNodeUtils.java index 8a369e26..c48693ac 100644 --- a/org.simantics.district.network.ui/src/org/simantics/district/network/ui/nodes/DistrictNetworkNodeUtils.java +++ b/org.simantics.district.network.ui/src/org/simantics/district/network/ui/nodes/DistrictNetworkNodeUtils.java @@ -5,6 +5,8 @@ import java.awt.geom.Point2D; import java.awt.geom.Rectangle2D; import org.simantics.district.network.ModelledCRS; +import org.simantics.maps.MapScalingTransform; +import org.simantics.scenegraph.utils.GeometryUtils; public class DistrictNetworkNodeUtils { @@ -35,4 +37,11 @@ public class DistrictNetworkNodeUtils { return transform; } + public static double calculateScaleRecip(AffineTransform tr) { + int zoomLevel = MapScalingTransform.zoomLevel(tr); + double scale = GeometryUtils.getScale(tr); + double sqrt = Math.sqrt(scale / zoomLevel); + double viewScaleRecip = (sqrt / zoomLevel); + return viewScaleRecip; + } }