Feature Request: Import .svg Files

Could you please elaborate what is “Industry” for you? Graphic-Design-Industry?
SVG is neither a standard in the CAD-industry nor the machine- and plant-engineering-industry - and there is a reason for that:
Did you ever have a look inside a SVG-File? Just open it with an editor! The only unit the SVG-Format knows is pixels. You won’t find any information on the used resolution (DPI) during the export or the used unit (mm, m, inch, px, etc.) - that is why receiving the correctly scaled geometry out of these online-converters is like gambling (their algorithms do not give you ability to change their hardcoded assumptions for units and resolution). If you exported the SVG-File yourself you may know about used units and resolution. Then you may apply these values during the import process or after it (if the converter allows to change that - the Shapr3D team would have to give this options in order to make that work properly during an import-process).
SVG is pretty useless for exchanging geometry in the industries I am involved in - the DXF-file-format may be 40 years old, but it is still THE standard in the manufacturing industry, for flattened sheet-metal-drawings for instance.
Cheers Matt

I have been a computer designer, coder and computer systems technician since 1990’s. Yes 40 years ago the modern XML svg 1.1 encoding didn’t exist. The only option was the DXF which is just an ASCII text file. SVG is vector, not pixels. It has coordinates not raster based DPI. I can create an SVG file in notepad. The only time dots per inch is referenced or used is when you are using a raster/pixel drawing made up of dots. Vectors have no dots.

DXF have no ability to “curve” lines with points like SVG files (or even SHAPR) because they don’t use the modern XML encoding. Each “curve” segment has to be translated from an SVG vector curve into its own line segment and 99% of the time in the saving, it breaks the joined lines. That is why no one uses DXF anymore. It doesn’t actually have curves, or to create complete paths just a bunch of tiny lines. SVG 1.1 includes paths, shapes, text, fill, stroke and markers, color, gradients and patterns, clipping, masking and compositing, filter effects, interactivity, linking, scripting, animation, fonts and metadata.

SVG is heavily used in the design and CAD industry. I use Fusion, Blender, Zbrush, Illustrator, Lightburn, Lychee, Silhouette, Affinity and other 3D building software and they standard import is SVG and even with Shapr3D their standard export is SVG.

In all my imports and exports my SVG files remain the same exact size. That is a feature of 1.1. DXF files do not consistently keep their size. Lightburn saves DXF from SVG and manages to resize the DXF to match and keep the lines joined BUT with DXF again 1000 tiny lines with 1000 tiny points are required to be created for each curve. However, all the online converters cannot convert SVG to DXF without breaking it all apart into separate tiny lines and resizing either too big or too small.


<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="304.8mm" height="304.8mm" viewBox="0 0 304.8 304.8">
<defs>
<path id="path_bfa9b0fa97dd86bfa152d42d4178bf1c" d="M 205.6584 137.9462 L 205.6615 148.3557 L 205.677 160.6983 C 205.6776 161.1535 205.6529 204.6218 205.6451 211.9045 L 205.6301 226.2988 L 205.5908 244.8187 L 205.5579 253.5138 C 205.5351 259.5471 205.824 261.6122 203.6452 264.2932 C 200.0373 268.7327 196.2953 268.4485 193.4594 268.45 L 184.474 268.4547 C 178.9515 268.4575 179.8781 269.0678 171.0381 271.6313 C 157.4368 275.5754 149.0384 276.7985 142.1241 277.499 C 124.0977 279.3253 107.1201 277.7555 100.1041 276.6797 C 96.44933 276.1193 85.15086 274.2884 71.20712 269.7692 C 62.5475 266.9626 56.27597 264.6975 50.41709 258.1508 C 43.03753 249.9049 42.78148 241.8602 42.80098 234.4461 L 42.87222 207.4483 L 42.88213 193.562 L 42.91372 155.9146 C 42.92828 138.5342 42.95177 111.8711 42.95214 111.4761 L 42.99726 87.52705 L 43.05141 76.26012 C 43.07857 70.59911 43.08139 62.19958 49.10661 54.33555 C 53.41237 48.71572 58.28857 45.9358 65.82522 43.06332 C 69.18242 41.78378 88.69181 34.49282 112.3207 33.09791 C 112.4031 33.09305 115.0612 32.95697 116.9571 32.86714 C 133.2727 32.0941 155.5815 34.07843 174.8125 40.33419 C 188.3198 44.72808 194.3964 47.08893 199.9868 54.83836 C 206.042 63.23209 205.7835 68.83388 205.7643 81.61901 C 205.7635 82.11978 205.7425 87.62823 205.7423 88.24683 L 205.7391 96.22366 L 205.7686 105.4478 C 205.7688 105.5344 205.7229 109.6264 205.7183 110.3193 C 205.718 110.3751 205.6987 116.5427 205.6986 116.5985 C 205.6986 116.6392 205.6989 116.7409 205.7082 121.1734 C 205.7163 125.0402 205.7338 126.5412 205.7298 126.8973 C 205.7249 127.3434 205.6781 128.2484 205.6749 129.8493 L 205.6584 137.9462 Z M 128.0088 267.7904 C 128.0088 270.0526 126.1711 271.8903 123.9089 271.8903 C 121.6467 271.8903 119.809 270.0526 119.809 267.7904 C 119.809 265.5282 121.6467 263.6905 123.9089 263.6905 C 126.1711 263.6905 128.0088 265.5282 128.0088 267.7904 Z M 128.497 42.98915 C 128.497 45.25142 126.6593 47.08904 124.3971 47.08904 C 122.1348 47.08904 120.2972 45.25142 120.2972 42.98915 C 120.2972 40.72691 122.1348 38.88928 124.3971 38.88928 C 126.6593 38.88928 128.497 40.72691 128.497 42.98915 Z" fill-rule="evenodd" fill="#000D09" fill-opacity="1" stroke="#000D09" stroke-opacity="1" stroke-width="0.1" stroke-linecap="round" stroke-linejoin="round"/>
</defs>
<g>
<use xlink:href="#path_bfa9b0fa97dd86bfa152d42d4178bf1c"/>
</g>
</svg>
1 Like

Interesting that you got a file with mm as unit - cudos! What software exported this file?
Using Affinity Designer I always end up with px and found no option to change that.
I used the designer persona for creation (so there were no pixels / raster involved), the document-unit was set to mm - but there still is a dpi involved in the document-properties (if I set the dpi from 300 to 150 the resulting width of the SVG is half from the previous version).
So if there is a software handling SVG with dimensional units instead of pixels, that would be nice to know.
But as long as the software the SVG-File was exported from affects the results of the import, I am not convinced that this is the new standard for data-exchange in the manufacturing-world (you may not tell what software a file came from for sure).

With this statement you are DEFINETLY wrong! But lets agree to disagree.

I have problems whenever sharing files are needed in my office. Maybe you have advice how I can work with my sketchup colleagues - what files to use. Most of the files available I have never heard of and all the files I want to use aren’t there.

I think this is a current issue for us architects and designers using shapr3d.

Any news on importing SVG? ETA? I need it.
Cheers Jon

Hi,

We aren’t working on SVG import on the short term, therefore I cannot give you an ETA.

2 Likes

It’s been so many years and you still haven’t added SVG. It’s very sad :roll_eyes:

1 Like

This is sad, this limits your product to scale to other tools, like a simple import svg, then extrude and make objects 3d, guess I will go back to Fusion3d to start my design.

I’m not a programmer but can these things be done very easy with standard code. Your not inventing anything new I guess

And then sometimes not.

I agree with you that this isn’t the highest priority, but I just found this kind of a crappy reply to someone who was making your case for you, as to why it’s not a high priority.

As it turns out, his expectations were reasonable and correct.

It’s less about that, and more about having to prioritise features which don’t have SUPER EASY workarounds, like using a website to convert your SVG to a DXF, which may take all of 30 seconds.

2 Likes

Anyway I’m happy that Rhino 7 seems to be a good companion to Shapr3D. Was asking in another post if there is any difference importing a igs or step or parasolid file?

Hey @symon,

IGES is basically a legacy format that is able to handle brep geometries also.

STEP was initially developed as a common CAD file format. Compared to IGES, it tends to have fewer issues when transferring files.

X_T is a bit different. It is the default format of Parasolid, the modeling engine of Shapr3D, and some other CAD tools like Solidworks and NX. While exporting to STEP and IGES requires conversion during import and export, X_T does not need to be converted if you move the files between Parasolid-based tools.

1 Like

As a new user running into this problem, I find reading a thread with over two years of requests by users extremely frustrating. Given the mission of Shapr3D to simplify all aspects of 3D workflows and the ubiquity of svg as a universal vector file format and the ample availabilty of libraries available for developers, it’s extremely disappointing and speaks volumes toward a disregard of your users’ priorities. Do better!

Hi @2urn , we receive hundreds, or sometimes thousands of feature requests every month from our hundreds of thousands of monthly active users. While we try to fulfil as many of them as possible, we are ruthlessly prioritizing what we build. SVG import is not on our mid term roadmap.

3 Likes

Thank you Istvan for clearing this one out. I was just testing Shapr3D and as an iPad/Mac user, I love the way your interface works.

Not adding SVG import is your choice and your right. It is your application. I respect that.

Nevertheless, to make my designs, I often start with a simple drawing in Affinity Design (used to use Illustrator for this before), then I revolve or extrude the drawing in a 3D package. When I want to put text on my designs, I also first create the text in 2D in Affinity Design. Most 2D preparation work is just way more easy to do in a graphics design application and there are way more options there.

Since SVG import is too important in our workflow to work without it, I’m glad to hear clearly it is not in the pipeline for the time being and we can move on to another application that has this feature. Thanks.

2 Likes

After years of unfulfilled requests about this, I think we can now rule out the “mid term roadmap”.

So Shapr3D cannot import 2D vector-based SVG or PDF. Only DXF/DWG and “live with that”.

Software on Mac like Affinity Designer 2.x or Pixelmator Pro 3.x can export vector graphics to SVG and PDF, but not to DXF.

People have asked Affinity for years to support DXF to no avail… same as you for SVG. It’s not on their “mid term roadmap” either.

What gives?

In practice you force us to use expensive software like Illustrator even if we want to avoid Adobe. It’s akin to an editor who would support only the docx format hence would force their user base to lock into the Microsoft Office ecosystem even if they want to avoid MS. I know that this comparison is a bit biased because DXF is an open exchange format. But basically this boils down to Illustrator or… using a CAD competitor of yours (!) simply to convert SVG to DXF. Especially since you don’t support curved text along curved paths and we are obliged to resort to 3rd-party software for creation.

And no, the online tools offering to convert SVG to DXF are not a professional solution as they actually generate sharp-edged low-poly sketches in DXF from smooth vector SVG in the first place, and text looks terrible once imported into Shapr3D using such workflow.

1 Like