From 8b5eb9cb3e235d3c09d406a687bb22a74a0f124e Mon Sep 17 00:00:00 2001 From: Jonathan Neuhauser Date: Mon, 14 Mar 2022 14:28:21 +0100 Subject: [PATCH] dxf12: base scale=mm --- dxf12_outlines.py | 5 +- .../dxf12_outlines__scale_not_unity__svg.out | 272 +++ .../data/refs/dxf12_outlines__shapes__svg.out | 1876 ++++------------- tests/data/svg/scale_not_unity.svg | 65 + tests/test_dxf12_outlines.py | 1 + 5 files changed, 806 insertions(+), 1413 deletions(-) create mode 100644 tests/data/refs/dxf12_outlines__scale_not_unity__svg.out create mode 100644 tests/data/svg/scale_not_unity.svg diff --git a/dxf12_outlines.py b/dxf12_outlines.py index 1b42b7f9..504a64d2 100755 --- a/dxf12_outlines.py +++ b/dxf12_outlines.py @@ -25,7 +25,9 @@ from __future__ import absolute_import, print_function, unicode_literals import re + import inkex +import inkex.units from inkex.bezier import cspsubdiv r12_header = """ 0 @@ -112,7 +114,8 @@ class DxfTwelve(inkex.OutputExtension): self.dxf_insert_code("999", '"DXF R12 Output" (www.mydxf.blogspot.com)') self.dxf_add(r12_header) - scale = 1 # TODO this assumes that one user unit corresponds to one mm + # Scale, but assume that the viewport is based on mm (dxf expects mm) + scale = self.svg.scale / inkex.units.convert_unit("1mm", "px") h = self.svg.viewbox_height path = "//svg:path" diff --git a/tests/data/refs/dxf12_outlines__scale_not_unity__svg.out b/tests/data/refs/dxf12_outlines__scale_not_unity__svg.out new file mode 100644 index 00000000..56a63605 --- /dev/null +++ b/tests/data/refs/dxf12_outlines__scale_not_unity__svg.out @@ -0,0 +1,272 @@ +999 +"DXF R12 Output" (www.mydxf.blogspot.com) + 0 +SECTION + 2 +HEADER + 9 +$ACADVER + 1 +AC1009 + 9 +$EXTMIN + 10 + 0 + 20 + 0 + 9 +$EXTMAX + 10 + 8.5 + 20 + 11 + 0 +ENDSEC + 0 +SECTION + 2 +ENTITIES +0 +LINE +8 +Ebene 1 +10 +58.683500 +20 +179.770000 +11 +158.683000 +21 +179.770000 +0 +LINE +8 +Ebene 1 +10 +158.683000 +20 +179.770000 +11 +158.683000 +21 +109.770000 +0 +LINE +8 +Ebene 1 +10 +158.683000 +20 +109.770000 +11 +58.683500 +21 +109.770000 +0 +LINE +8 +Ebene 1 +10 +58.683500 +20 +109.770000 +11 +58.683500 +21 +179.770000 +0 +LINE +8 +Ebene 1 +10 +0.000000 +20 +297.000000 +11 +50.000000 +21 +297.000000 +0 +LINE +8 +Ebene 1 +10 +50.000000 +20 +297.000000 +11 +50.000000 +21 +217.000000 +0 +LINE +8 +Ebene 1 +10 +50.000000 +20 +217.000000 +11 +0.000000 +21 +217.000000 +0 +LINE +8 +Ebene 1 +10 +0.000000 +20 +217.000000 +11 +0.000000 +21 +297.000000 +0 +LINE +8 +Ebene 1 +10 +190.000000 +20 +297.000000 +11 +210.000000 +21 +297.000000 +0 +LINE +8 +Ebene 1 +10 +210.000000 +20 +297.000000 +11 +210.000000 +21 +287.000000 +0 +LINE +8 +Ebene 1 +10 +210.000000 +20 +287.000000 +11 +190.000000 +21 +287.000000 +0 +LINE +8 +Ebene 1 +10 +190.000000 +20 +287.000000 +11 +190.000000 +21 +297.000000 +0 +LINE +8 +Ebene 1 +10 +0.000000 +20 +30.000000 +11 +15.000000 +21 +30.000000 +0 +LINE +8 +Ebene 1 +10 +15.000000 +20 +30.000000 +11 +15.000000 +21 +0.000000 +0 +LINE +8 +Ebene 1 +10 +15.000000 +20 +0.000000 +11 +0.000000 +21 +0.000000 +0 +LINE +8 +Ebene 1 +10 +0.000000 +20 +0.000000 +11 +0.000000 +21 +30.000000 +0 +LINE +8 +Ebene 1 +10 +140.000000 +20 +70.000000 +11 +210.000000 +21 +51.259800 +0 +LINE +8 +Ebene 1 +10 +210.000000 +20 +51.259800 +11 +210.000000 +21 +0.000000 +0 +LINE +8 +Ebene 1 +10 +210.000000 +20 +0.000000 +11 +152.197000 +21 +0.000000 +0 +LINE +8 +Ebene 1 +10 +152.197000 +20 +0.000000 +11 +140.000000 +21 +70.000000 + 0 +ENDSEC + 0 +EOF \ No newline at end of file diff --git a/tests/data/refs/dxf12_outlines__shapes__svg.out b/tests/data/refs/dxf12_outlines__shapes__svg.out index b0c19868..dcf47fce 100644 --- a/tests/data/refs/dxf12_outlines__shapes__svg.out +++ b/tests/data/refs/dxf12_outlines__shapes__svg.out @@ -31,2341 +31,1393 @@ LINE 8 Layer 1 10 -10.690400 +2.828520 20 -995.563000 +263.409000 11 --1.328020 +-0.351372 21 -999.982000 +264.578000 0 LINE 8 Layer 1 10 --1.328020 +-0.351372 20 -999.982000 +264.578000 11 -10.690400 +2.828520 21 -1004.400000 +265.748000 0 LINE 8 Layer 1 10 -10.690400 +2.828520 20 -1004.400000 +265.748000 11 -10.060854 +2.543171 21 -1003.380031 +265.190016 0 LINE 8 Layer 1 10 -10.060854 +2.543171 20 -1003.380031 +265.190016 11 -9.611955 +2.448604 21 -1002.292187 +264.583375 0 LINE 8 Layer 1 10 -9.611955 +2.448604 20 -1002.292187 +264.583375 11 -9.343316 +2.543995 21 -1001.158312 +263.974297 0 LINE 8 Layer 1 10 -9.343316 +2.543995 20 -1001.158312 +263.974297 11 -9.254547 +2.828520 21 -1000.000250 +263.409000 0 LINE 8 Layer 1 10 -9.254547 +2.828520 20 -1000.000250 +263.409000 11 -9.345260 +2.828520 21 -998.839844 -0 -LINE -8 -Layer 1 -10 -9.345260 -20 -998.839844 -11 -9.615066 -21 -997.698938 -0 -LINE -8 -Layer 1 -10 -9.615066 -20 -997.698938 -11 -10.063575 -21 -996.599375 -0 -LINE -8 -Layer 1 -10 -10.063575 -20 -996.599375 -11 -10.690400 -21 -995.563000 -0 -LINE -8 -Layer 1 -10 -10.690400 -20 -995.563000 -11 -10.690400 -21 -995.563000 -0 -LINE -8 -Slide2 -10 -783.086000 -20 -522.176000 -11 -778.298582 -21 -518.896378 -0 -LINE -8 -Slide2 -10 -778.298582 -20 -518.896378 -11 -773.061140 -21 -515.856405 -0 -LINE -8 -Slide2 -10 -773.061140 -20 -515.856405 -11 -767.408501 -21 -513.062405 -0 -LINE -8 -Slide2 -10 -767.408501 -20 -513.062405 -11 -761.375494 -21 -510.520703 -0 -LINE -8 -Slide2 -10 -761.375494 -20 -510.520703 -11 -754.996946 -21 -508.237623 -0 -LINE -8 -Slide2 -10 -754.996946 -20 -508.237623 -11 -748.307685 -21 -506.219490 -0 -LINE -8 -Slide2 -10 -748.307685 -20 -506.219490 -11 -741.342539 -21 -504.472628 -0 -LINE -8 -Slide2 -10 -741.342539 -20 -504.472628 -11 -734.136336 -21 -503.003362 -0 -LINE -8 -Slide2 -10 -734.136336 -20 -503.003362 -11 -726.723904 -21 -501.818015 -0 -LINE -8 -Slide2 -10 -726.723904 -20 -501.818015 -11 -719.140070 -21 -500.922913 -0 -LINE -8 -Slide2 -10 -719.140070 -20 -500.922913 -11 -711.419663 -21 -500.324380 -0 -LINE -8 -Slide2 -10 -711.419663 -20 -500.324380 -11 -703.597511 -21 -500.028740 -0 -LINE -8 -Slide2 -10 -703.597511 -20 -500.028740 -11 -695.708440 -21 -500.042317 -0 -LINE -8 -Slide2 -10 -695.708440 -20 -500.042317 -11 -687.787280 -21 -500.371437 -0 -LINE -8 -Slide2 -10 -687.787280 -20 -500.371437 -11 -679.868857 -21 -501.022423 -0 -LINE -8 -Slide2 -10 -679.868857 -20 -501.022423 -11 -671.988000 -21 -502.001600 -0 -LINE -8 -Slide2 -10 -671.988000 -20 -502.001600 -11 -664.290662 -21 -503.295296 -0 -LINE -8 -Slide2 -10 -664.290662 -20 -503.295296 -11 -656.914666 -21 -504.875782 -0 -LINE -8 -Slide2 -10 -656.914666 -20 -504.875782 -11 -649.882571 -21 -506.728362 -0 -LINE -8 -Slide2 -10 -649.882571 -20 -506.728362 -11 -643.216937 -21 -508.838337 -0 -LINE -8 -Slide2 -10 -643.216937 -20 -508.838337 -11 -636.940323 -21 -511.191010 -0 -LINE -8 -Slide2 -10 -636.940323 -20 -511.191010 -11 -631.075289 -21 -513.771684 -0 -LINE -8 -Slide2 -10 -631.075289 -20 -513.771684 -11 -625.644396 -21 -516.565660 -0 -LINE -8 -Slide2 -10 -625.644396 -20 -516.565660 -11 -620.670201 -21 -519.558242 -0 -LINE -8 -Slide2 -10 -620.670201 -20 -519.558242 -11 -616.175267 -21 -522.734733 -0 -LINE -8 -Slide2 -10 -616.175267 -20 -522.734733 -11 -612.182151 -21 -526.080433 -0 -LINE -8 -Slide2 -10 -612.182151 -20 -526.080433 -11 -608.713414 -21 -529.580647 -0 -LINE -8 -Slide2 -10 -608.713414 -20 -529.580647 -11 -605.791615 -21 -533.220677 -0 -LINE -8 -Slide2 -10 -605.791615 -20 -533.220677 -11 -603.439315 -21 -536.985824 -0 -LINE -8 -Slide2 -10 -603.439315 -20 -536.985824 -11 -601.679073 -21 -540.861392 -0 -LINE -8 -Slide2 -10 -601.679073 -20 -540.861392 -11 -601.028023 -21 -542.835991 -0 -LINE -8 -Slide2 -10 -601.028023 -20 -542.835991 -11 -600.533448 -21 -544.832683 -0 -LINE -8 -Slide2 -10 -600.533448 -20 -544.832683 -11 -600.198167 -21 -546.849632 -0 -LINE -8 -Slide2 -10 -600.198167 -20 -546.849632 -11 -600.025000 -21 -548.885000 -0 -LINE -8 -Slide2 -10 -600.025000 -20 -548.885000 -11 -600.016516 -21 -550.922206 -0 -LINE -8 -Slide2 -10 -600.016516 -20 -550.922206 -11 -600.171628 -21 -552.944624 -0 -LINE -8 -Slide2 -10 -600.171628 -20 -552.944624 -11 -600.487682 -21 -554.950357 -0 -LINE -8 -Slide2 -10 -600.487682 -20 -554.950357 -11 -600.962025 -21 -556.937507 -0 -LINE -8 -Slide2 -10 -600.962025 -20 -556.937507 -11 -601.592004 -21 -558.904174 -0 -LINE -8 -Slide2 -10 -601.592004 -20 -558.904174 -11 -602.374965 -21 -560.848461 -0 -LINE -8 -Slide2 -10 -602.374965 -20 -560.848461 -11 -604.389220 -21 -564.662302 -0 -LINE -8 -Slide2 -10 -604.389220 -20 -564.662302 -11 -606.983564 -21 -568.363843 -0 -LINE -8 -Slide2 -10 -606.983564 -20 -568.363843 -11 -610.136769 -21 -571.937899 -0 -LINE -8 -Slide2 -10 -610.136769 -20 -571.937899 -11 -613.827609 -21 -575.369284 -0 -LINE -8 -Slide2 -10 -613.827609 -20 -575.369284 -11 -618.034857 -21 -578.642812 -0 -LINE -8 -Slide2 -10 -618.034857 -20 -578.642812 -11 -622.737286 -21 -581.743298 -0 -LINE -8 -Slide2 -10 -622.737286 -20 -581.743298 -11 -627.913669 -21 -584.655555 -0 -LINE -8 -Slide2 -10 -627.913669 -20 -584.655555 -11 -633.542779 -21 -587.364398 -0 -LINE -8 -Slide2 -10 -633.542779 -20 -587.364398 -11 -639.603390 -21 -589.854642 -0 -LINE -8 -Slide2 -10 -639.603390 -20 -589.854642 -11 -646.074274 -21 -592.111099 -0 -LINE -8 -Slide2 -10 -646.074274 -20 -592.111099 -11 -652.934205 -21 -594.118585 -0 -LINE -8 -Slide2 -10 -652.934205 -20 -594.118585 -11 -660.161956 -21 -595.861914 -0 -LINE -8 -Slide2 -10 -660.161956 -20 -595.861914 -11 -667.736300 -21 -597.325900 -0 -LINE -8 -Slide2 -10 -667.736300 -20 -597.325900 -11 -675.522054 -21 -598.479801 -0 -LINE -8 -Slide2 -10 -675.522054 -20 -598.479801 -11 -683.374602 -21 -599.306670 -0 -LINE -8 -Slide2 -10 -683.374602 -20 -599.306670 -11 -691.258587 -21 -599.812050 -0 -LINE -8 -Slide2 -10 -691.258587 -20 -599.812050 -11 -699.138650 -21 -600.001482 -0 -LINE -8 -Slide2 -10 -699.138650 -20 -600.001482 -11 -706.979434 -21 -599.880509 -0 -LINE -8 -Slide2 -10 -706.979434 -20 -599.880509 -11 -714.745581 -21 -599.454672 -0 -LINE -8 -Slide2 -10 -714.745581 -20 -599.454672 -11 -722.401734 -21 -598.729512 -0 -LINE -8 -Slide2 -10 -722.401734 -20 -598.729512 -11 -729.912533 -21 -597.710573 -0 -LINE -8 -Slide2 -10 -729.912533 -20 -597.710573 -11 -737.242623 -21 -596.403395 -0 -LINE -8 -Slide2 -10 -737.242623 -20 -596.403395 -11 -744.356644 -21 -594.813522 -0 -LINE -8 -Slide2 -10 -744.356644 -20 -594.813522 -11 -751.219239 -21 -592.946493 -0 -LINE -8 -Slide2 -10 -751.219239 -20 -592.946493 -11 -757.795050 -21 -590.807852 -0 -LINE -8 -Slide2 -10 -757.795050 -20 -590.807852 -11 -764.048719 -21 -588.403141 -0 -LINE -8 -Slide2 -10 -764.048719 -20 -588.403141 -11 -769.944889 -21 -585.737900 -0 -LINE -8 -Slide2 -10 -769.944889 -20 -585.737900 -11 -775.448202 -21 -582.817673 -0 -LINE -8 -Slide2 -10 -775.448202 -20 -582.817673 -11 -780.523300 -21 -579.648000 -0 -LINE -8 -Slide2 -10 -780.523300 -20 -579.648000 -11 -700.000000 -21 -550.000000 -0 -LINE -8 -Slide2 -10 -700.000000 -20 -550.000000 -11 -783.086000 -21 -522.176000 -0 -LINE -8 -Slide2 -10 -100.000000 -20 -400.000000 -11 -200.000000 -21 -300.000000 -0 -LINE -8 -Slide2 -10 -200.000000 -20 -300.000000 -11 -300.000000 -21 -400.000000 -0 -LINE -8 -Slide2 -10 -300.000000 -20 -400.000000 -11 -400.000000 -21 -300.000000 -0 -LINE -8 -Slide2 -10 -500.000000 -20 -400.000000 -11 -500.195312 -21 -395.703125 +263.409000 0 LINE 8 Slide2 10 -500.195312 +207.191000 20 -395.703125 +138.159000 11 -500.659180 +204.538579 21 -390.771484 +136.486927 0 LINE 8 Slide2 10 -500.659180 +204.538579 20 -390.771484 +136.486927 11 -501.562500 +201.446738 21 -384.375000 +135.075179 0 LINE 8 Slide2 10 -501.562500 +201.446738 20 -384.375000 +135.075179 11 -503.051758 +197.989198 21 -376.806641 +133.937144 0 LINE 8 Slide2 10 -503.051758 +197.989198 20 -376.806641 +133.937144 11 -504.061890 +194.239677 21 -372.674561 +133.086207 0 LINE 8 Slide2 10 -504.061890 +194.239677 20 -372.674561 +133.086207 11 -505.273438 +190.271897 21 -368.359375 +132.535757 0 LINE 8 Slide2 10 -505.273438 +190.271897 20 -368.359375 +132.535757 11 -506.704712 +186.159578 21 -363.897705 +132.299179 0 LINE 8 Slide2 10 -506.704712 +186.159578 20 -363.897705 +132.299179 11 -508.374023 +181.976439 21 -359.326172 +132.389861 0 LINE 8 Slide2 10 -508.374023 +181.976439 20 -359.326172 +132.389861 11 -510.299683 +177.796200 21 -354.681396 +132.821190 0 LINE 8 Slide2 10 -510.299683 +177.796200 20 -354.681396 +132.821190 11 -512.500000 +173.808049 21 -350.000000 +133.581652 0 LINE 8 Slide2 10 -512.500000 +173.808049 20 -350.000000 +133.581652 11 -514.993286 +170.183861 21 -345.318604 +134.630080 0 LINE 8 Slide2 10 -514.993286 +170.183861 20 -345.318604 +134.630080 11 -517.797852 +166.971385 21 -340.673828 +135.935365 0 LINE 8 Slide2 10 -517.797852 +166.971385 20 -340.673828 +135.935365 11 -520.932007 +164.218373 21 -336.102295 +137.466396 0 LINE 8 Slide2 10 -520.932007 +164.218373 20 -336.102295 +137.466396 11 -524.414062 +161.972578 21 -331.640625 +139.192064 0 LINE 8 Slide2 10 -524.414062 +161.972578 20 -331.640625 +139.192064 11 -528.262329 +160.281749 21 -327.325439 +141.081259 0 LINE 8 Slide2 10 -528.262329 +160.281749 20 -327.325439 +141.081259 11 -532.495117 +159.659370 21 -323.193359 +142.077457 0 LINE 8 Slide2 10 -532.495117 +159.659370 20 -323.193359 +142.077457 11 -537.130737 +159.193640 21 -319.281006 +143.102871 0 LINE 8 Slide2 10 -537.130737 +159.193640 20 -319.281006 +143.102871 11 -542.187500 +158.890527 21 -315.625000 +144.153611 0 LINE 8 Slide2 10 -542.187500 +158.890527 20 -315.625000 +144.153611 11 -547.683716 +158.756000 21 -312.261963 +145.225790 0 LINE 8 Slide2 10 -547.683716 +158.756000 20 -312.261963 +145.225790 11 -553.637695 +158.794810 21 -309.228516 +146.299897 0 LINE 8 Slide2 10 -553.637695 +158.794810 20 -309.228516 +146.299897 11 -560.067749 +159.003948 21 -306.561279 +147.356344 0 LINE 8 Slide2 10 -560.067749 +159.003948 20 -306.561279 +147.356344 11 -566.992188 +159.377799 21 -304.296875 +148.391114 0 LINE 8 Slide2 10 -566.992188 +159.377799 20 -304.296875 +148.391114 11 -574.429321 +159.910746 21 -302.471924 +149.400189 0 LINE 8 Slide2 10 -574.429321 +159.910746 20 -302.471924 +149.400189 11 -582.397461 +161.431464 21 -301.123047 +151.325184 0 LINE 8 Slide2 10 -582.397461 +161.431464 20 -301.123047 +151.325184 11 -590.914917 +163.521171 21 -300.286865 +153.099184 0 LINE 8 Slide2 10 -590.914917 +163.521171 20 -300.286865 +153.099184 11 -600.000000 +166.134938 21 -300.000000 +154.690048 0 LINE 8 Slide2 10 -600.000000 +166.134938 20 -300.000000 +154.690048 11 -604.542542 +169.227835 21 -300.072479 +156.065632 0 LINE 8 Slide2 10 -604.542542 +169.227835 20 -300.072479 +156.065632 11 -608.801270 +172.754932 21 -300.286865 +157.193793 0 LINE 8 Slide2 10 -608.801270 +172.754932 20 -300.286865 +157.193793 11 -612.785339 +176.671300 21 -300.638580 +158.042390 0 LINE 8 Slide2 10 -612.785339 +176.671300 20 -300.638580 +158.042390 11 -616.503906 +180.808925 21 -301.123047 +158.566469 0 LINE 8 Slide2 10 -616.503906 +180.808925 20 -301.123047 +158.566469 11 -619.966125 +184.979820 21 -301.735687 +158.750305 0 LINE 8 Slide2 10 -619.966125 +184.979820 20 -301.735687 +158.750305 11 -623.181152 +189.109144 21 -302.471924 +158.605628 0 LINE 8 Slide2 10 -623.181152 +189.109144 20 -302.471924 +158.605628 11 -626.158142 +193.122058 21 -303.327179 +158.144169 0 LINE 8 Slide2 10 -626.158142 +193.122058 20 -303.327179 +158.144169 11 -628.906250 +196.943721 21 -304.296875 +157.377657 0 LINE 8 Slide2 10 -628.906250 +196.943721 20 -304.296875 +157.377657 11 -631.434631 +200.499293 21 -305.376434 +156.317823 0 LINE 8 Slide2 10 -631.434631 +200.499293 20 -305.376434 +156.317823 11 -633.752441 +203.713932 21 -306.561279 +154.976397 0 LINE 8 Slide2 10 -633.752441 +203.713932 20 -306.561279 +154.976397 11 -635.868835 +206.512800 21 -307.846832 +153.365110 0 LINE 8 Slide2 10 -635.868835 +206.512800 20 -307.846832 +153.365110 11 -637.792969 +185.208000 21 -309.228516 +145.521000 0 LINE 8 Slide2 10 -637.792969 +185.208000 20 -309.228516 +145.521000 11 -639.533997 +207.191000 21 -310.701752 +138.159000 0 LINE 8 Slide2 10 -639.533997 +26.458300 20 -310.701752 +105.833000 11 -641.101074 +52.916600 21 -312.261963 +79.374900 0 LINE 8 Slide2 10 -641.101074 +52.916600 20 -312.261963 +79.374900 11 -642.503357 +79.374900 21 -313.904572 +105.833000 0 LINE 8 Slide2 10 -642.503357 +79.374900 20 -313.904572 +105.833000 11 -643.750000 +105.833000 21 -315.625000 +79.374900 0 LINE 8 Slide2 10 -643.750000 +132.292000 20 -315.625000 +105.833000 11 -644.850159 +132.343676 21 -317.418671 +104.696120 0 LINE 8 Slide2 10 -644.850159 +132.343676 20 -317.418671 +104.696120 11 -645.812988 +132.705411 21 -319.281006 +101.698891 0 LINE 8 Slide2 10 -645.812988 +132.705411 20 -319.281006 +101.698891 11 -647.363281 +133.099443 21 -323.193359 +99.696431 0 LINE 8 Slide2 10 -647.363281 +133.099443 20 -323.193359 +99.696431 11 -648.474121 +133.687262 21 -327.325439 +97.461429 0 LINE 8 Slide2 10 -648.474121 +133.687262 20 -327.325439 +97.461429 11 -649.218750 +134.507624 21 -331.640625 +95.071397 0 LINE 8 Slide2 10 -649.218750 +134.507624 20 -331.640625 +95.071397 11 -649.670410 +135.599288 21 -336.102295 +92.603850 0 LINE 8 Slide2 10 -649.670410 +135.599288 20 -336.102295 +92.603850 11 -649.902344 +137.001009 21 -340.673828 +90.136303 0 LINE 8 Slide2 10 -649.902344 +137.001009 20 -340.673828 +90.136303 11 -650.000000 +138.751546 21 -350.000000 +87.746271 0 LINE 8 Slide2 10 -650.000000 +138.751546 20 -350.000000 +87.746271 11 -650.097656 +140.889656 21 -359.326172 +85.511269 0 LINE 8 Slide2 10 -650.097656 +140.889656 20 -359.326172 +85.511269 11 -650.329590 +143.454095 21 -363.897705 +83.508809 0 LINE 8 Slide2 10 -650.329590 +143.454095 20 -363.897705 +83.508809 11 -650.781250 +146.483622 21 -368.359375 +81.816408 0 LINE 8 Slide2 10 -650.781250 +146.483622 20 -368.359375 +81.816408 11 -651.525879 +150.016994 21 -372.674561 +80.511580 0 LINE 8 Slide2 10 -651.525879 +150.016994 20 -372.674561 +80.511580 11 -652.636719 +151.984733 21 -376.806641 +80.028729 0 LINE 8 Slide2 10 -652.636719 +151.984733 20 -376.806641 +80.028729 11 -654.187012 +154.092967 21 -380.718994 +79.671839 0 LINE 8 Slide2 10 -654.187012 +154.092967 20 -380.718994 +79.671839 11 -655.149841 +156.346541 21 -382.581329 +79.450600 0 LINE 8 Slide2 10 -655.149841 +156.346541 20 -382.581329 +79.450600 11 -656.250000 +158.750300 21 -384.375000 +79.374700 0 LINE 8 Slide2 10 -656.250000 +158.750300 20 -384.375000 +79.374700 11 -657.496643 +161.078966 21 -386.095428 +79.450600 0 LINE 8 Slide2 10 -657.496643 +161.078966 20 -386.095428 +79.450600 11 -658.898926 +163.116953 21 -387.738037 +79.671839 0 LINE 8 Slide2 10 -658.898926 +163.116953 20 -387.738037 +79.671839 11 -660.466003 +164.883639 21 -389.298248 +80.028729 0 LINE 8 Slide2 10 -660.466003 +164.883639 20 -389.298248 +80.028729 11 -662.207031 +166.398402 21 -390.771484 +80.511580 0 LINE 8 Slide2 10 -662.207031 +166.398402 20 -390.771484 +80.511580 11 -664.131165 +167.680622 21 -392.153168 +81.110703 0 LINE 8 Slide2 10 -664.131165 +167.680622 20 -392.153168 +81.110703 11 -666.247559 +168.749677 21 -393.438721 +81.816408 0 LINE 8 Slide2 10 -666.247559 +168.749677 20 -393.438721 +81.816408 11 -668.565369 +169.624946 21 -394.623566 +82.619007 0 LINE 8 Slide2 10 -668.565369 +169.624946 20 -394.623566 +82.619007 11 -671.093750 +170.325806 21 -395.703125 +83.508809 0 LINE 8 Slide2 10 -671.093750 +170.325806 20 -395.703125 +83.508809 11 -673.841858 +170.871638 21 -396.672821 +84.476126 0 LINE 8 Slide2 10 -673.841858 +170.871638 20 -396.672821 +84.476126 11 -676.818848 +171.281819 21 -397.528076 +85.511269 0 LINE 8 Slide2 10 -676.818848 +171.281819 20 -397.528076 +85.511269 11 -680.033875 +171.772745 21 -398.264313 +87.746271 0 LINE 8 Slide2 10 -680.033875 +171.772745 20 -398.264313 +87.746271 11 -683.496094 +171.953612 21 -398.876953 +90.136303 0 LINE 8 Slide2 10 -683.496094 +171.953612 20 -398.876953 +90.136303 11 -687.214661 +171.979450 21 -399.361420 +92.603850 0 LINE 8 Slide2 10 -687.214661 +171.979450 20 -399.361420 +92.603850 11 -691.198730 +172.005288 21 -399.713135 +95.071397 0 LINE 8 Slide2 10 -691.198730 +172.005288 20 -399.713135 +95.071397 11 -695.457458 +172.186155 21 -399.927521 +97.461429 0 LINE 8 Slide2 10 -695.457458 +172.186155 20 -399.927521 +97.461429 11 -700.000000 +172.677081 21 -400.000000 +99.696431 0 LINE 8 Slide2 10 -700.000000 +172.677081 20 -400.000000 +99.696431 11 -709.085083 +173.087262 21 -399.713135 +100.731574 0 LINE 8 Slide2 10 -709.085083 +173.087262 20 -399.713135 +100.731574 11 -717.602539 +173.633094 21 -398.876953 +101.698891 0 LINE 8 Slide2 10 -717.602539 +173.633094 20 -398.876953 +101.698891 11 -725.570679 +174.333954 21 -397.528076 +102.588693 0 LINE 8 Slide2 10 -725.570679 +174.333954 20 -397.528076 +102.588693 11 -733.007812 +175.209223 21 -395.703125 +103.391292 0 LINE 8 Slide2 10 -733.007812 +175.209223 20 -395.703125 +103.391292 11 -739.932251 +176.278278 21 -393.438721 +104.096997 0 LINE 8 Slide2 10 -739.932251 +176.278278 20 -393.438721 +104.096997 11 -746.362305 +177.560498 21 -390.771484 +104.696120 0 LINE 8 Slide2 10 -746.362305 +177.560498 20 -390.771484 +104.696120 11 -752.316284 +179.075261 21 -387.738037 +105.178971 0 LINE 8 Slide2 10 -752.316284 +179.075261 20 -387.738037 +105.178971 11 -757.812500 +180.841947 21 -384.375000 +105.535861 0 LINE 8 Slide2 10 -757.812500 +180.841947 20 -384.375000 +105.535861 11 -762.869263 +182.879934 21 -380.718994 +105.757100 0 LINE 8 Slide2 10 -762.869263 +182.879934 20 -380.718994 +105.757100 11 -767.504883 +185.208600 21 -376.806641 +105.833000 0 LINE 8 Slide2 10 -767.504883 +185.208600 20 -376.806641 +105.833000 11 -771.737671 +187.612359 21 -372.674561 +105.757100 0 LINE 8 Slide2 10 -771.737671 +187.612359 20 -372.674561 +105.757100 11 -775.585938 +189.865933 21 -368.359375 +105.535861 0 LINE 8 Slide2 10 -775.585938 +189.865933 20 -368.359375 +105.535861 11 -779.067993 +191.974167 21 -363.897705 +105.178971 0 LINE 8 Slide2 10 -779.067993 +191.974167 20 -363.897705 +105.178971 11 -782.202148 +193.941906 21 -359.326172 +104.696120 0 LINE 8 Slide2 10 -782.202148 +193.941906 20 -359.326172 +104.696120 11 -785.006714 +197.475278 21 -354.681396 +103.391292 0 LINE 8 Slide2 10 -785.006714 +197.475278 20 -354.681396 +103.391292 11 -787.500000 +200.504805 21 -350.000000 +101.698891 0 LINE 8 Slide2 10 -787.500000 +200.504805 20 -350.000000 +101.698891 11 -789.700317 +203.069244 21 -345.318604 +99.696431 0 LINE 8 Slide2 10 -789.700317 +203.069244 20 -345.318604 +99.696431 11 -791.625977 +205.207354 21 -340.673828 +97.461429 0 LINE 8 Slide2 10 -791.625977 +205.207354 20 -340.673828 +97.461429 11 -793.295288 +206.957891 21 -336.102295 +95.071397 0 LINE 8 Slide2 10 -793.295288 +206.957891 20 -336.102295 +95.071397 11 -794.726562 +208.359613 21 -331.640625 +92.603850 0 LINE 8 Slide2 10 -794.726562 +208.359613 20 -331.640625 +92.603850 11 -795.938110 +209.451276 21 -327.325439 +90.136303 0 LINE 8 Slide2 10 -795.938110 +209.451276 20 -327.325439 +90.136303 11 -796.948242 +210.271638 21 -323.193359 +87.746271 0 LINE 8 Slide2 10 -796.948242 +210.271638 20 -323.193359 +87.746271 11 -798.437500 +210.859457 21 -315.625000 +85.511269 0 LINE 8 Slide2 10 -798.437500 +210.859457 20 -315.625000 +85.511269 11 -799.340820 +211.253489 21 -309.228516 +83.508809 0 LINE 8 Slide2 10 -799.340820 +211.253489 20 -309.228516 +83.508809 11 -799.804688 +211.615224 21 -304.296875 +80.511580 0 LINE 8 Slide2 10 -799.804688 +211.615224 20 -304.296875 +80.511580 11 -800.000000 +211.666900 21 -300.000000 +79.374700 0 LINE 8 Slide2 10 -244.833000 +64.778700 20 -110.860000 +29.331700 11 -199.494100 +52.782800 21 -118.994460 +31.483940 0 LINE 8 Slide2 10 -199.494100 +52.782800 20 -118.994460 +31.483940 11 -167.089800 +44.209180 21 -86.256960 +22.822150 0 LINE 8 Slide2 10 -167.089800 +44.209180 20 -86.256960 +22.822150 11 -160.815650 +42.549150 21 -131.890460 +34.896050 0 LINE 8 Slide2 10 -160.815650 +42.549150 20 -131.890460 +34.896050 11 -119.666950 +31.661850 21 -152.592260 +40.373400 0 LINE 8 Slide2 10 -119.666950 +31.661850 20 -152.592260 +40.373400 11 -161.128150 +42.631750 21 -172.660860 +45.683210 0 LINE 8 Slide2 10 -161.128150 +42.631750 20 -172.660860 +45.683210 11 -168.101120 +44.476680 21 -218.192860 +57.730210 0 LINE 8 Slide2 10 -168.101120 +44.476680 20 -218.192860 +57.730210 11 -199.999720 +52.916510 21 -184.962460 +48.938000 0 LINE 8 Slide2 10 -199.999720 +52.916510 20 -184.962460 +48.938000 11 -245.457920 +64.944010 21 -192.400930 +50.906090 0 LINE 8 Slide2 10 -245.457920 +64.944010 20 -192.400930 +50.906090 11 -223.711120 +59.190170 21 -151.794830 +40.162390 0 LINE 8 Slide2 10 -223.711120 +59.190170 20 -151.794830 +40.162390 11 -244.833000 +64.778700 21 -110.860000 +29.331700 0 ENDSEC 0 diff --git a/tests/data/svg/scale_not_unity.svg b/tests/data/svg/scale_not_unity.svg new file mode 100644 index 00000000..2a4341ae --- /dev/null +++ b/tests/data/svg/scale_not_unity.svg @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + diff --git a/tests/test_dxf12_outlines.py b/tests/test_dxf12_outlines.py index 507495fb..5c231c62 100644 --- a/tests/test_dxf12_outlines.py +++ b/tests/test_dxf12_outlines.py @@ -10,6 +10,7 @@ class TestDXF12OutlinesBasic(ComparisonMixin, TestCase): "svg/preserved-transforms.svg", "svg/dxf_nested_transforms.svg", "svg/clips_and_masks.svg", + "svg/scale_not_unity.svg", ] comparisons = [()] effect_class = DxfTwelve -- GitLab