Scaling objects with constant wall thickness for 3D printing
The question is how to scale an existing mesh without changing the thickness of the walls?
I am using Blender to create STL files for 3D printing. Let's say I create a shell for a model railroad car. Since 1/87th is the most common scale I make the walls of the shell just thick enough to make it rigid in 1/87 scale. Now, if I want to print the same shell in a larger scale, say 1/48, the wall thickness will nearly double and it will waste material printing walls that are thicker than needed. If I want to print in 1/160 the printing may fail because the wall thickness falls below the minimum the printer will support.
Your question falls into two different categories, here at 3D Printing SE and there, at Blender SE.
I would consider that your objective would best be solved using some form of parametric modeling, an aspect that is rarely embraced by Blender. Even though the limitations of Blender make life interesting for you, there may be a couple of useful features within (and without) the program.
On Blender SE, a question of similar format exists, with a somewhat open-ended answer. A quick search using The Google, with the terms "Parametric Modeling with Blender" results in a number of different approaches. According to a quick perusal of the search results, some of the solutions involve free plug-ins or add-ons for Blender. More complexity rather than less, perhaps.
I'm familiar enough with the very simple basics of Blender to know I would not be able to make use of those answers. I'm also well aware that Blender's power extends beyond my own limitations with features supporting scripting, animation and so many other tools. Seeing the workflow diagrams/charts that make up some of the advanced portion of the program leads me to believe that one can accomplish your objective, but one must be a certified wizard with the program.
As an alternative, one could engage any one of the many parametric modeling programs available. I'm a fan of OpenSCAD, although the text/scripting interface can be daunting for some. If you've become skilled in Blender, a non-GUI format isn't necessarily the best route, although the GUI options are no less confusing, in my opinion.
The minimum scale of your model
The modeling of your 3D file doesn’t necessarily require that you work with a given unit or scale. It’s particularly true with software like Blender in which you’re able to give proportion but no unit. This job will be done after the modeling phase when you send your model to a 3D printer. That’s why you need to pay extra attention to both the scale and the size of your model at that point. Creating a 3D print in millimeters instead of centimeters might very well result in a bad 3D print.
A powerful example of that can be found in architectural models. This is, in fact, one of the main issues we encountered while working with La Cité de L’Architecture on La Merveille’s reproduction. With architectural models, it can, for instance, be entirely possible to 3D print a scale 1/10 of something and just impossible to do the same at 1/250.
After a certain level of miniaturization, the details (present in the digital 3D file) are starting to vanish in the physical world because the 3D printer itself is no able to create them (or will create very fragile one). Quite often for architectural models, human intervention is necessary to decide which details will be kept and which won’t so that the 3D file doesn’t contain information that won’t be printable.
Make your model solid, then during slicing:
- scale your object
- set infill to 0%
- set desired number of perimeters (that will be the wall thickness)
That way with just one model you may have any wall thickness independently of scale.
The idea is to not model walls. Make model that's fully filled inside. Setting infill to 0% in slicer will make shell out of it. Perimeters will be your walls and since infill is 0% the print will be hollow inside. Learn about infill and perimeters (shells).
I think you are making too many assumptions about what I'm doing. First the slicer for the formlabs printer I'm using does not have any "infill" feature that I can find. Maybe someone who is more familiar with the preform slicer can confirm this. Second I think you may be assuming that there is nothing inside the model. This is not always the case. If I'm modelling a truck cab for instance, I may want to print it with a dashboard and steering wheel inside.
License under CC-BY-SA with attribution
Content dated before 7/24/2021 11:53 AM
eaelec 6 years ago
I'll have to learn about "infill", never used it before. My current plan is to create a shell with only faces, no thickness. Then just before I produce the stl file I would apply the solidify modifier, setting the thickness to be adequate for the scale I plan to print.