3D STEP File Compatible: For supports export and import file

Formlabs might want to consider 3MF, since the additive manufacturing industry is in the process of replacing STL with 3MF - an extensible, open source, unambiguous language for representing geometry, but without the complexity of CAD formats like STEP.

SolidWorks, Catia, NetFabb and many others are now, or are rapidly becoming able to, import and export 3MF… Take a look at the 3MF consortium http://3mf.io/ for more about 3MF and the consortium which is developing it.

STL files will display and process at the lowest level allowing for lower end systems to be able to be used. Once you get into anything other than triangles (what your system is actually manipulating) then you will require higher end systems with beefier display cards to crunch that down.

You may see a cad file all nice and smooth on screen but there is a lot that goes behind that interpretation. Much of that is not needed on a 3d printer so long as your export meets the requirements of the printer with minimum features size, wall thickness and tessellation on curvature.

Nothing will be gained by clunking out cad files to print to a 3d printer. Why stl is still the standard.

1 Like

Agree with those who say stick with .STL or .3MF in future and save dev time for more important work than spending time developing .STEP import. To suggest that .STL is somehow only useful for “Art CAD” is an over-simplification. We have various engineering workflows which make use of .STL objects - e.g. saving time using hybrid modelling - i.e. a mix of geometric CAD and scan-derived STL which many CAM packages are quite comfortable with. Some CAD packages like Spaceclaim can happily do boolean operations between solids and meshes and most suitable packages give good granularity over mesh resolution to enable you to create printable files with accurate feature resolution finer than the printer can print, whilst maintaining manageable file sizes. Keep up the great work Formlabs team!


Art CAD specialised in shape shifting features because it based on mesh for surface manipulation, whereas Engineer CAD Has a feature tree (history), it can measure it great detail and can output 2D drawings for manufacturing.

I haven’t used SpaceClaim myself, but it seem like a type of engineer CAD that specialised in mesh, because mesh based CAD are designed for computer simulation i.e. FEA, CFD or animation & rendering. e.g. SolidWorks and ProE isn’t meshed based (maybe Catia?).

I know of this because I’ve used ANSYS before (who own SpaceClaim) and at one point with Nastran (difficult to use)

Most CAM accept STL as it can easier to convert to on G-codes, but doesn’t mean tooling designer like using STL as they prefer STEP;

Most CMM uses point cloud data (basically STL ASCII), but guess what they used in their software (STEP) to be imported for overlay measurement to compare the difference.

I’m guessing your are a Simulation Engineer? If so, do you know any Mechanical Design Engineers & manufacturer & tool makers who widely uses 3MF or STL instead of STEP? Have you seen people use 3D max or Maya or other Art CAD for manufacturing (even though it doesn’t have 2D technical drawing)?

It seriously prohibit manufacturing if the 3D CAD software doesn’t support 2d technical drawing.

Please look at their FAQ

Eventhough 3mf themselves were created not to replace STEP for manufacturing, as 3mf are specifically for 3d printing (with colour).

I suspected you already knew STL has 2 variant (Binary & ASCII), but 3mf isn’t binary, it basically a compressed STL ASCII with colour information. 3mf are only useful if your 3d printer have more than one material colour like dual extruder FDM or polyjet SLA, evenghough most (if not all) 3d machines already accept STL binary.

Image below indicate the time to save a file and file size of ASCII format for both 3mf & STL

Our current workflow:
So every time when I created a production 3D model just before sending it to the toolmaker I had to > first copy and modify the CAD model i.e. simplify it > then send to 3d printer > test & verify the print > tweak the production model (if necessary) > send to tool maker.

This is a common, but lengthy practice within the design & manufacturing sector This also means we have to treat any exported files like STL, STEP, 2D PDFs drawings & others to be controlled by PDM workflow. Even if the file structure to be done manually, it can still be an issue as I’ve been in a PDM administrator position as well (even though it can be dependent on what PDM software that you use).

I’m not here to suggest removing STL from Preform, but introduce additional format like STEP.

Since many people here seem to think STL is superior to STEP, then can someone explain the huge discrepancy of different file format in Solidworks?

STL: (as shown above to test out file transfer size & time e.g. SW > STL > SW)
when open SW - 7.44mb at 2.91s > When saved STL = 521mb at 54.07s > when open STL at 36.96s > when STL saved to SW = 382mb at 17.20s

when open SW - 7.44mb at 2.91s > When saved 3mf = 132mb at 8m15s > when open 3mf (more than 15 minute before crashing)

Parasolid Binary (x_b):
when open SW - 7.44mb at 2.91s > When saved x_b = 0.98mb at less than 1s > when open x_b at less than 3m > when x_b saved to SW = 2.79mb at less than 2s

Pro E:
when open SW - 7.44mb at 2.91s > When saved ProE = 5.16mb at 11.56s > when open Pro E at 13.92s (knitted to form solid)> when ProE saved to SW = 2.82mb at less than 2 sec

when open SW - 7.44mb at 2.91s > When saved STEP = 8.82mb at less than 3s > when open STEP at 10.15s > when STEP saved to SW = 1.98mb (ASM) +1.04mb (PART) at less than 3s

It a basic test, but it already showing a huge disadvantage for me when using solidworks with STL or 3mf , I believe same can be said to any 3D Engineer CAD that doesn’t use mesh by default.

I disagree. during my student days I used to own Pentium 3 Coppermine (I think it a 600Mhz CPU), but it can run Pro E with 512mb RAM with Radeon consumer grade GPU not Firepro with OPENGL switch on, SSD wasn’t even invented yet.

Even in those days, these specs considered to be mid grade consumer hardware at the time. Eventhough, Pro E is one of the heaviest CAD out there, if anything it the RAM is lagging more than the GPU (I think it before DDR2 and I remember trying to find more Ram like 1GB as it can get a bit laggy if the assemblies are starting to getting too complicated).

I can easily say the same thing about today consumer PC specs, just switch on OpenGL and have enough RAM and you are good to go.

The real difference with Nvidia Quadro Vs GTX cards is being more stable. This is especially true when doing mesh / computer simulations like FEA, NC, Mould Sim, Animation & Rendering.

I know this because I end up using University Machines (better specs than mine) 9 -12x of them at the same time to create the animation, It doesn’t have a word for this back then, but it now called “render farm” for the likes of Toy Story 1.

Also in those days I had to use multiple floppy disc just to transfer one STL model for 3D printing. Whereas if STEP where invented back then I can just about squeezing into one floppy disc.

I’m only going to answer this, in the event that someone out there is wondering what the differences between a Quadro card and a GeForce card are.

If you think the only difference between the Quadro and a GeForce is stability, you have obviously never used them side by side so you can see the difference.

Other than the fact that the Quadro’s accuracy has been cranked up to provide double precision computations, one of the biggest differences are the application specific mini-drivers that are loaded on the fly depending which app is running. Those drivers account for huge performance improvements over an equivalent GeForce GPU, plus they enable features within the applications that are simply not available when running on a GeForce GPU.

While the Quadros are capable of playing games, they do not excel at it, but on the other hand, a Geforce card simply can’t do some of the tricks the Quadro can in a CAD program.

My point is, if you’re a casual CAD user, a GeForce card will work just fine, but if you’re a power user or a CAD professional, there’s no substitute for a professional CAD GPU like the Quadro or the FireGL/Fire Pro series.

And if money is no object you can get crazy and buy a card like the new pascal series P6000, which will blow the mightiest Titan or GTX1080i out of the water, while lightening your pocket load by about $5-6K.

It is still a waste of time to support any cad file for 3d printing. The files still have to be cooked down to their lowest level and sliced. Much like post script files are eventually converted to bitmaps on print.

If people are having difficulty in printing stl files from the software they are exporting from then either the software doesn’t have the proper settings or has a lousy export.

I would rather see an ipad/iphone or android port of PreForm where users can print and check print remotely.

That is my point, Consumer grade GPU can do CAD modelling just fine, but when it comes to 100+ features or sims, then it needs a Quadro.

Do you use high spec pc just for 3d printing? i.e. to cope with more than 100+ features with 100+ parts in a master assembly and print it (merged bodies)? I do, which is why I have to use Quadro, but the point is that for most 3d printing generally you don’t need a high PC specs. But for me even with STL at 500mb+ it start to lag even with a pro PC specs. What worse is that it not a mesh program for editing STL.

Also if you are a Pro SW user you should know there are 2 different drivers out there i.e. one provided by SW and the other by the GPU vendor (AMD or Nvidia), If you know your GPU you should know which one should never use.

While most Art CAD especially the open source or strip down version doesn’t need high spec as I need to with Solidworks or any other Engineer CAD that doesn’t use surface / mesh modelling by default as it is a solid modelling program by default.




I just want to clarify:

Art CAD = polygon mesh modeling
Engineer CAD = mathematically precise surfaces and solids modeling

Are these what you are talking about?
They have been developed differently for many good reasons, as we all seem to understand here in this thread. In the end most machines making a part revert to layers (Z) of connected 2D points (XY). I am not sure exactly why it is so important to export PreForm files to modify the supports, when you can import your exported STL model into Meshmixer, create the supports you want in Meshmixer, import into PreForm, then align the base of your supports planar to the build platform. 3D printers are limited in their precision because of design tradeoffs, but also actual physical limitations, so there is a resulting limit to features that will print in that resolution becomes a challenge the smaller a feature is. I find that creating an acceptably efficient workflow is realistic, as it reduces expectations and frustrations. It would be nice to have the ability to go back and forth more fluidly between CAD apps, but there are good reasons to maintain the separation in the workflow, at least for me.

Kelvin, I do appreciate the time you have taken to write about your experiences in great detail regarding this evolving discipline.

Your mean something like this? (Most ain’t free, but all of which do STEP & STL)


Also, you can currently check print status and even remote notifications anyway with dashboard.

Before calling SW lousy.

SW, PRoE, Catia & Unigraphics and most other Engineer CAD handle better with STEP than with STL as shown in my previous post where STL ASCII can get around 1.4GB (or 500mb+ for STL binary) eventhough the native CAD is less than 5mb as these programs only really intended for exporting STL and not import (can do it but not great). Which is why you don’t see huge amount of STL editing features in these Engineer CAD,

So back to my original post:
STEP compatible with Preform (along side with STL) so that Formlabs don’t miss out on Engineer CAD modelling side rather than just solely focusing on Artistic / Creative / Mesh CAD users (mostly STL or OBJ) in which MAKERBOT already has dual file compatibility.

Makerbot file supports:
Mac: MakerBot (.makerbot), STL (.stl)

Windows: MakerBot (.makerbot), STL (.stl), SolidWorks (.sldprt, .sldasm), InventorOBJ (.ipt, .iam), IGES (.iges, .igs), STEP AP203/214 (.step, .stp), CATIA (.CATPart, .CATProduct), Wavefront Object(.obj), Unigraphics/NX (.prt), Solid Edge (.par, .asm), ProE/Creo (.prt, .prt., .asm, .asm.), VRML(.wrl), Parasolid (.x_t, .x_b)

While Formlab File Support:
Mac: Object(.obj), STL (higher than the 200mb limit)

Windows: Object(.obj), STL (200mb or less)

Thats my point. If you see those step viewers they show the cad models at very low tesselation because the hardware isn’t there to handle nice smooth interpretations of geometries. Could you imagine trying to print something as low res as that?

Why manipulating a cooked down poly object and the ability to get visual feedback on a poly mesh where stress points would be is far less taxing than with a cad file.

Thats not to say it isn’t impossible but I don’t think many if any companies will realize their return on investment for this and if the market is even there… I don’t think its practical.

Where did you get this information from?

Take a look at Makerbot’s own support site, and you’ll find that it only supports STL, OBJ, Makerbot, Thing & G-Code.

By the same token Formlabs supports STL, OBJ, Form (which is technically the same as Makerbot format). Thing files are nothing more than a collection of STL files into a single file, and GCode which is exactly what it says, the actual toolpath GCode, which hardly anyone uses, as it can be huge (hundreds of Megabytes).

As you can see, Makerbot doesn’t have any special abilities or better file format support than PreForm.

Thank you…

I’ve been waiting for too long for them (Stratasys) to change i.e. over 15 years, but over the course of these years I’ve seen they’ve grown bigger and bigger, but only to Monopolise the situation. E.g. Pro SLA cost around twice compared to Formlabs whereas FDM matierals cost 8-10x or the fact that they bully startups and then buy ups companies that has potential like polyjet.

I strongly believe that 3D printing (or Additive Manufacturing) shouldn’t reserve only for the rich or for the pros.

Currently there is still a gap between Enthusiast and Pro Machine (beside the Art & Engineer CAD). Ever since the days of seeing new comer like the RepRap Parent & Child low cost concept back in 2005-6 from Bath university or the Sugar Printer 10 years ago. It has shown that it is possible to create low cost machine without compromising the details.

I even used a 250k SLA machine to print many stuff that no one even considered at that time to proof the worth of 3D printing besides the traditional uses for Rapid Prototyping purposes.

3D printing should be progressive evolutionary and shouldn’t just stick with STL as it has been with Stratasys and it got them nowhere in terms of innovating their machines (e.g. they never liked PLA) other than being huge amount of their resources on monopolisation. I even ask them why their annual maintenance cost is as high as their mid range machine (in five years time)? I even asked UV oven 2 years ago with Formlab, but reseller doesn’t seem to know what I was talking about at that time even though it a well known fact within the Pro SLA users communities.

With STEP it allow for more flexible reverse engineering and open up a door way from CAD egineer’s models, but with STL it will mostly reserve for Enthusiast users even-though Continuous DLP is the next big thing that would literally bridge the gap ever closer between manufacturing & prototyping (Carbon 3D, Nexa3D & etc), but I also wanting to see bridging between Art + Engineer CAD as well as Enthusiast and Pro Model makers.

Yes, Formlab already informed me of Meshmixer, my colleagues will never agree of using this (but I’m quite happy to try out different CAD system concurrently as I’ve done so in the past) as most of them want a seamless transition to print, but personally I would probably create my own custom supports in SW before sending it to Preform, because I’m not sure if you are aware, Preform Supports generations are little basic when compared to Stratasys SLA support editing software (more in depth & specific), eventhough their machine is printed right way up (build platform moves downward) while Formlabs printed upside down (move upward) with a non right angle preferences when printing.

I’ve tested both orientations on the Form2 and it definitely a limiting factor (support & model orientation issue) if compared to building the model right way up and there is even a Form3 suggestion on this forum too as I believe most replied have seen what SLA can do if the models / build platform moves downwards.

Please look at the link provided.

This is from Makerbot own website, not only that the reseller told me in person that they recently adopted STEP and other file types.

You can get wireframe, but not low res STEP as it doesn’t have options like that, but you can with STL. With STEP it gives you basic options likes:

what been viewed in STEP on screen isn’t what you get (i.e. you get a lot more detail in print than what you see on screen), it different to how STL works.

This must be a new feature in Makerbot print, because earlier versions didn’t support all these formats.

Anyway, just to see how well it works, I downloaded the app, and tried importing a few Solidworks files. The import needs some work.

As you well, know, a Solidworks part file (SLDPRT) can contain many solid bodies as well as surfaces. The import explodes the part into the individual solid bodies and arranges them on the platform for printing as separate parts. If you import a Solidworks assembly (SLDASM), it does the same thing, all the parts, and individual bodies within the parts are exploded a re-arranged on the print bed.

I was about to write about how useless that was, until I noticed the “assemble” check box, which basically puts the original assembly back together

The problem is that the imported parts sometimes are missing surfaces, and there’s no “Fix” function that I can find., and last but not least, if you take a closer look, you’ll find that the object surface is made up of small flat triangles, which means that it was tessellated (STL) in the import process.

So for the moment, I’ll stick with the Solidworks export, as it’s much more robust.

You may want to test a part from MOI3d. It has a really nice tessellation control for export with live preview. I do use that as well as FormZ pro (hybrid modeler) and though FZ does an outstanding export and models so far have been error free coming into PreForm I feeel that MOI is better suited for this purpose. For the money if your using SolidWorks MOI is a fraction of the price at $240 or so.

Hi…as per my knowledge the reason most printing services ask for the STEp file is because they sometimes need to edit or make small changes to the model, either to fix small problems or make the file printable or in the case of injection molding, to add or modify necessary features like drafts.

smt circuit board assembly

Yes, that is one of the reason I wanted STEP, because it a much more flexible file to work with, as it allows me to edit features like draft & radii, screw thread tolerances before going into the SLA machine, where fit and function between parts are critical when model making.

Where STL file just isn’t good enough for editing draft, radii & thread tolerances to the exact design specification.

Most injection moulded parts have a much tighter tolerances than any 3D printer could produce, where I always end up re-skinning the models (20 to 100 micron) to ensure I get a good enough fit between parts.

This also allow for proper reverse engineering with STEP.

Think of 3D STEP models = Vector / Tiff file in the 2D World, while STL model = bitmap / jpg

If you are semi-pro photographer would you use your camera and output as jpeg OR tiff for post editing?

1 Like

If a client sends you a STEP file, wouldn’t you edit it as you suggest in a CAD program? Once you have made your adjustments, export an STL file, at whatever resolution you need to get the best out of your printer, and build it.

I wouldn’t expect to use my printer software to edit a STEP file… In fact, I definitely WOULDN’T want my printer software to change my stl data in any way at all, other than maybe fix a few leaks of delete duplicate triangles etc.