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=21e49b58277c8f93334ddcf1ccf6428363f278dc;hb=731368eea74c3292199315a38d6914b09b813632;hp=08253bb28d3e552b200d12a5c57c9509e5b4e07a;hpb=bbe939348eedaeeee3b1031059e2aca42e6137c3;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 08253bb2..21e49b58 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 @@ -39,7 +39,14 @@ public class DistrictNetworkNodeUtils { public static double calculateScaleRecip(AffineTransform tr) { int zoomLevel = MapScalingTransform.zoomLevel(tr); - double t = 1.0 / Math.sqrt(zoomLevel); + double t = 1.0 / (getScale(tr) * Math.sqrt(zoomLevel)); return t; } + + static double getScale(AffineTransform tr) { + double scale; + scale = GeometryUtils.getScale(tr); + scale = Math.max(4096, Math.min(scale, 32768)); + return scale; + } }