aboutsummaryrefslogtreecommitdiff
path: root/svg-flatten
diff options
context:
space:
mode:
authorjaseg <git@jaseg.de>2024-09-23 22:44:31 +0200
committerjaseg <git@jaseg.de>2024-09-23 22:44:31 +0200
commitd6ca9cdf71f3c4f06797fb5459127cfe1cd55e9d (patch)
treebd7a47736a96860ed3d71f5a0e8dcaddf0f83c39 /svg-flatten
parent00f0d772f7e1009324998ca6d739df4275c98d6a (diff)
downloadgerbolyze-d6ca9cdf71f3c4f06797fb5459127cfe1cd55e9d.tar.gz
gerbolyze-d6ca9cdf71f3c4f06797fb5459127cfe1cd55e9d.tar.bz2
gerbolyze-d6ca9cdf71f3c4f06797fb5459127cfe1cd55e9d.zip
svg-flatten: Fix uniformity calculation
Previously, the uniformity check miscalculated the worst-case absolute deviation
Diffstat (limited to 'svg-flatten')
-rw-r--r--svg-flatten/include/geom2d.hpp5
-rw-r--r--svg-flatten/testdata/svg/xform_uniformity_threshold.svg292
2 files changed, 69 insertions, 228 deletions
diff --git a/svg-flatten/include/geom2d.hpp b/svg-flatten/include/geom2d.hpp
index 34455cd..28ce024 100644
--- a/svg-flatten/include/geom2d.hpp
+++ b/svg-flatten/include/geom2d.hpp
@@ -180,10 +180,11 @@ namespace gerbolyze {
}
double imbalance = f_max / f_min - 1.0;
- //cerr << " * skew check: " << dbg_str();
+ bool okay = imbalance < rel_tol && (f_max - f_min)*fabs(dist_doc) < abs_tol;
+ //cerr << " " << (okay ? "." : "#") << " skew check: " << dbg_str();
//cerr << " imbalance=" << imbalance << endl;
//cerr << " rel=" << (imbalance < rel_tol) << " abs=" << (imbalance*fabs(dist_doc) < abs_tol) << endl;
- return imbalance < rel_tol && imbalance*fabs(dist_doc) < abs_tol;
+ return okay;
}
double doc2phys_min(double dist_doc) {
diff --git a/svg-flatten/testdata/svg/xform_uniformity_threshold.svg b/svg-flatten/testdata/svg/xform_uniformity_threshold.svg
index d9a6c02..e8a1dc1 100644
--- a/svg-flatten/testdata/svg/xform_uniformity_threshold.svg
+++ b/svg-flatten/testdata/svg/xform_uniformity_threshold.svg
@@ -7,7 +7,7 @@
viewBox="0 0 80 160"
version="1.1"
id="svg5"
- inkscape:version="1.2.2 (b0a8486541, 2022-12-01)"
+ inkscape:version="1.3.2 (091e20ef0f, 2023-11-25, custom)"
sodipodi:docname="xform_uniformity_threshold.svg"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
@@ -24,11 +24,11 @@
inkscape:deskcolor="#d1d1d1"
inkscape:document-units="mm"
showgrid="false"
- inkscape:zoom="8.6041055"
- inkscape:cx="139.00341"
- inkscape:cy="420.14827"
- inkscape:window-width="1920"
- inkscape:window-height="1011"
+ inkscape:zoom="3.0420107"
+ inkscape:cx="28.928235"
+ inkscape:cy="187.54043"
+ inkscape:window-width="3840"
+ inkscape:window-height="2091"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="1"
@@ -48,10 +48,11 @@
id="layer1">
<path
id="path3566"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="M 8.1315672,8.1008172 H 14.053661 M 11.092614,5.1397702 V 11.061865" />
<g
- id="g4187">
+ id="g4187"
+ style="opacity:1">
<path
id="path4184"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -59,47 +60,25 @@
</g>
<path
id="path4219"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 8.1315672,23.975818 h 5.9220938 m -2.909362,-2.961047 -0.10337,5.922095" />
<g
id="g4223"
- transform="matrix(1,0,-0.01745506,1,0.23376669,15.875)">
+ transform="matrix(1,0,-0.01745506,1,0.23376669,15.875)"
+ style="opacity:1">
<path
id="path4221"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
</g>
<path
- id="path4225"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 8.1315672,23.975818 h 5.9220938 m -2.909362,-2.961047 -0.10337,5.922095" />
- <g
- id="g4229"
- transform="matrix(1,0,-0.01745506,1,0.23376669,15.875)">
- <path
- id="path4227"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
- id="path4231"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 8.1315672,23.975818 h 5.9220938 m -2.909362,-2.961047 -0.10337,5.922095" />
- <g
- id="g4235"
- transform="matrix(1,0,-0.01745506,1,0.23376669,15.875)">
- <path
- id="path4233"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
id="path4237"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 8.1315672,39.850819 h 5.9220938 m -2.857677,-2.961047 -0.20674,5.922095" />
<g
id="g4241"
- transform="matrix(1,0,-0.03491012,1,0.46753338,31.750001)">
+ transform="matrix(1,0,-0.03491012,1,0.46753338,31.750001)"
+ style="opacity:1">
<path
id="path4239"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -107,11 +86,12 @@
</g>
<path
id="path4243"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 8.1315672,55.72582 h 5.9220938 m -2.805992,-2.961047 -0.31011,5.922095" />
<g
id="g4247"
- transform="matrix(1,0,-0.05236518,1,0.70130007,47.625002)">
+ transform="matrix(1,0,-0.05236518,1,0.70130007,47.625002)"
+ style="opacity:1">
<path
id="path4245"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -119,11 +99,12 @@
</g>
<path
id="path4249"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 8.1315672,71.600821 h 5.9220938 m -2.754307,-2.961047 -0.41348,5.922095" />
<g
id="g4253"
- transform="matrix(1,0,-0.06982024,1,0.93506676,63.500003)">
+ transform="matrix(1,0,-0.06982024,1,0.93506676,63.500003)"
+ style="opacity:1">
<path
id="path4251"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -131,11 +112,12 @@
</g>
<path
id="path4305"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 24.006568,8.1008172 h 5.922094 m -2.701989,-2.961047 -0.518116,5.9220948" />
<g
id="g4309"
- transform="matrix(1,0,-0.08748866,1,17.046691,0)">
+ transform="matrix(1,0,-0.08748866,1,17.046691,0)"
+ style="opacity:1">
<path
id="path4307"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -143,47 +125,25 @@
</g>
<path
id="path4311"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 24.006568,23.975818 h 5.922094 m -2.650304,-2.961047 -0.621486,5.922095" />
<g
id="g4315"
- transform="matrix(1,0,-0.10494372,1,17.280458,15.875)">
+ transform="matrix(1,0,-0.10494372,1,17.280458,15.875)"
+ style="opacity:1">
<path
id="path4313"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
</g>
<path
- id="path4317"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 24.006568,23.975818 h 5.922094 m -2.650304,-2.961047 -0.621486,5.922095" />
- <g
- id="g4321"
- transform="matrix(1,0,-0.10494372,1,17.280458,15.875)">
- <path
- id="path4319"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
- id="path4323"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 24.006568,23.975818 h 5.922094 m -2.650304,-2.961047 -0.621486,5.922095" />
- <g
- id="g4327"
- transform="matrix(1,0,-0.10494372,1,17.280458,15.875)">
- <path
- id="path4325"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
id="path4329"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 24.006568,39.850819 h 5.922094 m -2.598619,-2.961047 -0.724856,5.922095" />
<g
id="g4333"
- transform="matrix(1,0,-0.12239878,1,17.514225,31.750001)">
+ transform="matrix(1,0,-0.12239878,1,17.514225,31.750001)"
+ style="opacity:1">
<path
id="path4331"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -191,11 +151,12 @@
</g>
<path
id="path4335"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 24.006568,55.72582 h 5.922094 m -2.546934,-2.961047 -0.828226,5.922095" />
<g
id="g4339"
- transform="matrix(1,0,-0.13985384,1,17.747991,47.625002)">
+ transform="matrix(1,0,-0.13985384,1,17.747991,47.625002)"
+ style="opacity:1">
<path
id="path4337"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -203,107 +164,25 @@
</g>
<path
id="path4341"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 24.006568,71.600821 h 5.922094 m -2.495249,-2.961047 -0.931596,5.922095" />
<g
id="g4345"
- transform="matrix(1,0,-0.1573089,1,17.981758,63.500003)">
+ transform="matrix(1,0,-0.1573089,1,17.981758,63.500003)"
+ style="opacity:1">
<path
id="path4343"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
</g>
<path
- id="path4347"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 24.006568,8.1008172 h 5.922094 m -2.701989,-2.961047 -0.518116,5.9220948" />
- <g
- id="g4351"
- transform="matrix(1,0,-0.08748866,1,17.046691,0)">
- <path
- id="path4349"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
- id="path4353"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 24.006568,23.975818 h 5.922094 m -2.650304,-2.961047 -0.621486,5.922095" />
- <g
- id="g4357"
- transform="matrix(1,0,-0.10494372,1,17.280458,15.875)">
- <path
- id="path4355"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
- id="path4359"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 24.006568,23.975818 h 5.922094 m -2.650304,-2.961047 -0.621486,5.922095" />
- <g
- id="g4363"
- transform="matrix(1,0,-0.10494372,1,17.280458,15.875)">
- <path
- id="path4361"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
- id="path4365"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 24.006568,23.975818 h 5.922094 m -2.650304,-2.961047 -0.621486,5.922095" />
- <g
- id="g4369"
- transform="matrix(1,0,-0.10494372,1,17.280458,15.875)">
- <path
- id="path4367"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
- id="path4371"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 24.006568,39.850819 h 5.922094 m -2.598619,-2.961047 -0.724856,5.922095" />
- <g
- id="g4375"
- transform="matrix(1,0,-0.12239878,1,17.514225,31.750001)">
- <path
- id="path4373"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
- id="path4377"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 24.006568,55.72582 h 5.922094 m -2.546934,-2.961047 -0.828226,5.922095" />
- <g
- id="g4381"
- transform="matrix(1,0,-0.13985384,1,17.747991,47.625002)">
- <path
- id="path4379"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
- id="path4383"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 24.006568,71.600821 h 5.922094 m -2.495249,-2.961047 -0.931596,5.922095" />
- <g
- id="g4387"
- transform="matrix(1,0,-0.1573089,1,17.981758,63.500003)">
- <path
- id="path4385"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
id="path4389"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 39.881569,8.1008172 h 5.922094 M 43.360732,5.1397702 42.3245,11.061865" />
<g
id="g4393"
- transform="matrix(1,0,-0.17497732,1,34.093383,0)">
+ transform="matrix(1,0,-0.17497732,1,34.093383,0)"
+ style="opacity:1">
<path
id="path4391"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -311,47 +190,25 @@
</g>
<path
id="path4395"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 39.881569,23.975818 h 5.922094 m -2.391246,-2.961047 -1.139602,5.922095" />
<g
id="g4399"
- transform="matrix(1,0,-0.19243238,1,34.32715,15.875)">
+ transform="matrix(1,0,-0.19243238,1,34.32715,15.875)"
+ style="opacity:1">
<path
id="path4397"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
</g>
<path
- id="path4401"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 39.881569,23.975818 h 5.922094 m -2.391246,-2.961047 -1.139602,5.922095" />
- <g
- id="g4405"
- transform="matrix(1,0,-0.19243238,1,34.32715,15.875)">
- <path
- id="path4403"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
- id="path4407"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 39.881569,23.975818 h 5.922094 m -2.391246,-2.961047 -1.139602,5.922095" />
- <g
- id="g4411"
- transform="matrix(1,0,-0.19243238,1,34.32715,15.875)">
- <path
- id="path4409"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
id="path4413"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 39.881569,39.850819 h 5.922094 m -2.339561,-2.961047 -1.242972,5.922095" />
<g
id="g4417"
- transform="matrix(1,0,-0.20988744,1,34.560917,31.750001)">
+ transform="matrix(1,0,-0.20988744,1,34.560917,31.750001)"
+ style="opacity:1">
<path
id="path4415"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -359,11 +216,12 @@
</g>
<path
id="path4419"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 39.881569,55.72582 h 5.922094 m -2.287876,-2.961047 -1.346342,5.922095" />
<g
id="g4423"
- transform="matrix(1,0,-0.2273425,1,34.794683,47.625002)">
+ transform="matrix(1,0,-0.2273425,1,34.794683,47.625002)"
+ style="opacity:1">
<path
id="path4421"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -371,11 +229,12 @@
</g>
<path
id="path4425"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 39.881569,71.600821 h 5.922094 m -2.236191,-2.961047 -1.449712,5.922095" />
<g
id="g4429"
- transform="matrix(1,0,-0.24479756,1,35.02845,63.500003)">
+ transform="matrix(1,0,-0.24479756,1,35.02845,63.500003)"
+ style="opacity:1">
<path
id="path4427"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -383,11 +242,12 @@
</g>
<path
id="path4431"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 55.75657,8.1008172 h 5.922094 m -2.183873,-2.961047 -1.554348,5.9220948" />
<g
id="g4435"
- transform="matrix(1,0,-0.26246598,1,51.140075,0)">
+ transform="matrix(1,0,-0.26246598,1,51.140075,0)"
+ style="opacity:1">
<path
id="path4433"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -395,47 +255,25 @@
</g>
<path
id="path4437"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 55.75657,23.975818 h 5.922094 m -2.132188,-2.961047 -1.657718,5.922095" />
<g
id="g4441"
- transform="matrix(1,0,-0.27992104,1,51.373842,15.875)">
+ transform="matrix(1,0,-0.27992104,1,51.373842,15.875)"
+ style="opacity:1">
<path
id="path4439"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
</g>
<path
- id="path4443"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 55.75657,23.975818 h 5.922094 m -2.132188,-2.961047 -1.657718,5.922095" />
- <g
- id="g4447"
- transform="matrix(1,0,-0.27992104,1,51.373842,15.875)">
- <path
- id="path4445"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
- id="path4449"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 55.75657,23.975818 h 5.922094 m -2.132188,-2.961047 -1.657718,5.922095" />
- <g
- id="g4453"
- transform="matrix(1,0,-0.27992104,1,51.373842,15.875)">
- <path
- id="path4451"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
- d="m 13.423234,13.392484 h 5.922094 m -2.961047,-2.961047 v 5.922095" />
- </g>
- <path
id="path4455"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 55.75657,39.850819 h 5.922094 m -2.080503,-2.961047 -1.761088,5.922095" />
<g
id="g4459"
- transform="matrix(1,0,-0.2973761,1,51.607609,31.750001)">
+ transform="matrix(1,0,-0.2973761,1,51.607609,31.750001)"
+ style="opacity:1">
<path
id="path4457"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -443,11 +281,12 @@
</g>
<path
id="path4461"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 55.75657,55.72582 h 5.922094 m -2.028818,-2.961047 -1.864458,5.922095" />
<g
id="g4465"
- transform="matrix(1,0,-0.31483116,1,51.841375,47.625002)">
+ transform="matrix(1,0,-0.31483116,1,51.841375,47.625002)"
+ style="opacity:1">
<path
id="path4463"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
@@ -455,11 +294,12 @@
</g>
<path
id="path4467"
- style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"
+ style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none;opacity:1"
d="m 55.75657,71.600821 h 5.922094 m -1.977133,-2.961047 -1.967828,5.922095" />
<g
id="g4471"
- transform="matrix(1,0,-0.33228622,1,52.075142,63.500003)">
+ transform="matrix(1,0,-0.33228622,1,52.075142,63.500003)"
+ style="opacity:1">
<path
id="path4469"
style="fill:#ffffff;stroke:#000000;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:none"