Friday, March 29, 2013

3D Printing and Revit STL Files

I recently got an email from a fellow Revit user asking if Revit 2014 changed anything for creating STL files, specifically if we could define inches as the base unit. I haven't had the opportunity to print anything to a 3D printer via a vendor myself yet so I'm clueless.

He shared with me his current frustration which apparently has to do with a fairly automated process that his vendors offer. Apparently it is as simple as: Submit your STL file online and get your automated quote in return. It works great as long as the submitted STL file uses the correct units, which is apparently "inches". If you don't cooperate with the system you end up having to call each vendor and it takes a lot more time than necessary.

He was specifically writing about the STL Exporter for Revit from Autodesk Labs. It exports to the units "Feet" and there is no way to alter that presumption. I've asked about it with a couple friends at Autodesk and it is on their radar so hopefully they can provide an option, in the future, for defining the units of the file output.

Since I have no wisdom to offer him and I know that at least a few readers have experience with this process I'm curious what alternatives he could consider. Can some other application that can edit STL files let him change the units? Perhaps the vendors could make this easier for customers and provide a pricing routine that asks for STL units? Is it more complicated than it seems? Comments are welcome!


Dale Bartlett said...

Hi Steve, The underlying unit sytem in Revit is seriously flawed in that a "foot" is the fundamental unit. I am astounded that a programmer starting with a clean slate would choose this as the basis for a graphics and information intensive application. Aside from your issue (which adsk will be able to plaster over), it must affect 3D printing because rounding errors will create invalid models. Regards, Dale

Steve said...

I recall being told by developers that the underlying system in Revit is metric. It can display whatever units the project file is assigned to you can even assign it to AutoCAD but then all information is displayed in inches instead of feet and inches.

Revit chose feet and inches as the default imperial format because we tend to deal with dimensions larger than 12 inches more than less. Many parts of the manufacturing world lives deals with dimensions smaller than 12 inches more.

I hardly think of it as a serious problem. It hasn't caused me any pain over the last decade.

DaveP said...

We're experimenting with sending our Opening Schedules out to our Hardware consultants. I was rather surprised to see the Door Width as 3.0 and the Height as 7.1666 .!
But not as surprised as I was to find out that Excel does NOT have a built-in function to convert Decimal Feet to Feet and Inches.

tVo said...

While it is true that the Revit STL exporter maps a base STL "unit" to 1 foot - STL is a "unitless" format. So you must ultimately rely on the software / system driving the 3D printer to scale that down to something that can fit on the bed., for example, provides a scale tool which, with a little math, will allow you to scale the STL model down to an architectural scale that can be printed.

Anonymous said...

Export as dwg, use other software to scale (i use rhino) then export to stl.

Martin Taurer said...

To go back to the 3D Printing topic - we got one now and I have been experimenting with it and IMHO the only way to get you results predictable is to use any application that can directly handle STL Files. I use Rhino where I scale and check the file before running it through the printer software to create the actual toolpath.

Anonymous said...

If you are using a Makerbot Replicator 2, set the exported STL file Units to millimeters when using the STL Exporter for Revit plugin. This is the anticipated units for that machine. Just FYI the STL export will also respond to the limits of the Section Box in a 3D view; so to avoid exporting floors and below I turn the section box on, align it to my Level 1 view, and drag the extents of the Section Box outwards (in plan) and high enough to include whatever I want printed. This ensures a level base, and no issues with finish/slab floors.

Anonymous said...

Just downloaded the tool and the revision log says "2014.1.0
Support other units on export instead of just Feet"
Haven't tried it yet though.