Parametric two-part mold generator for OpenSCAD
by jasonwebb, published
These scripts can be used to generate either **square** (with or without rounded corners) or **circular** two-part molds and are fully parameterized to make it easy to adapt for your application.
Refer to the instructions below for some general tips, as well ideas for casting.
I have successfully made casts from these molds using wax, Knox gelatin, Oogoo and chocolate. If you have success with other casting media, please leave a comment!
Many more pictures of molds and castings I made with these scripts:
If you'd like to read about the development process for these scripts, and learn from some of the issues I came across, check out:
If you really want to bring your molds to the next level, you can even try the "lost ABS" (or lost PLA) process to turn it into metal: jason-webb.info/2012/11/lost-abs-experiment-with-3d-printed-objects-and-aluminum-casting/
I have also uploaded a parametric open-face mold generator to create positive and negative molds: thingiverse.com/thing:32657
Recent Commentsview all
Turns out there was an error in that STL file. The source of that file was fine, but the version that was "fixed" was actually broken! LOL. I also had to reduce the polygon count a bit as you documented (THANK YOU!) in order to get the compile to finish in a reasonable time.
Yep, you will need to work on your STL a bit. Most likely it is too complex for OpenSCAD. Under the Instructions section there is a note at the very top about how to use Meshlab to reduce the polygon count of your model for use with this script. This video may be helpful: https://www.youtube.com/watch?...
So, I'm trying to use this script with this .STL
http://www.thingiverse.com/thi... (getting a jump on next Halloween)
I've repositioned it in the script::
// Model parameters
model_filename = "Celtic_Skull_Fixed.stl";
model_rotate = [90,0,0];
model_translate = [0,42,-10];
model_scale = .45;
// Mold parameters
mold_diameter = 33;
mold_height = 35;
and when I Compile, I see the indentation of the skull in the mould just as expected.
But when I compile /and Render (GCAL)/ the mold appears to be empty, and, the first time only, I get this error:
Rendering Polygon Mesh using CGAL...
CGAL error in CGAL_Build_PolySet: CGAL ERROR: assertion violation!
Expr: check_protocoll == 0
I saved the STL file anyway, and it doesn't appear to have any impression of the skull in it when viewed in MeshLab or Cura.
Any idea what is going wrong there? Is the skull just too complex? I get the same error if I change the script to just import the skull without using the mold script, so it must be something with the skull stl file. Wish I knew how to fix it.
Liked Byview all
Give a Shout Out
To create a two-part mold using these scripts, you first need to prepare an STL model of your choice. OpenSCAD has some performance limitations when it comes to loading external STL files, so keep your polygon counts as low as you can. I like to use Meshlab's "Quadric Edge Collapse Decimation" filter (under the "Remeshing, Simplification and Reconstruction" section) to reduce the number of faces in more complex models to get them to load in OpenSCAD.
Avoid undercuts and overhangs in your model, as this mold-making process doesn't really allow for that.
**Using the scripts**
1. Download one of the .scad files and open it in OpenSCAD.
2. Update the parameters in the script to point to your model, as well as transform it to be suitable for printing.
3. Compile and Render (F6) the script with your updated parameters.
4. Grab an STL using the "Design > Export as STL" tool.
**Guide to parameters**
* _Model parameters_ - external STL model to build mold around. Use the rotation, translation and scale parameters to orient your model relative to the mold.
* _Mold parameters_ - attributes of the mold itself. Make it any size you want, and turn on or off rounded corners to help with printability.
* _Key parameters_ - attributes of the registration marks to get the halves to fit together well.
* _Pour hole parameters_ - attributes, translation and rotation of the pour hole so you can get material into the mold. This can be tricky, so take your time to experiment.
**Slicing your mold**
In my experience, the resulting OpenSCAD models are very tolerant of a wide range of slicing settings. I like to keep the infill down around 20%, and opt for only 1 shell, if any. A layer height of around 0.15mm works well for me. Larger layer heights can result in gaps in the inner mold form which can make it more difficult to cast.
**Printing your mold**
1. Be sure to seal your bot against drafts if using ABS. I faced a lot of layer separation issues in the beginning.
2. Make sure your build platform is level! If its not, you may see bowing or warping in your mold.
3. Accurately measure the diameter of your filament and update it your slicing engine. I experienced some pretty severe delamination / layer separation issues on the outer walls of my early molds before I did this.
**Finishing your mold**
Depending on slicing settings, you may end up with a mold that is not completely watertight. I had small gaps in some of my molds that let water seep into the mold form and made it hard to cast anything. A quick spray or brushing of polyurethane fixed that right up for me, but obviously this makes any kind of food casting a bad idea.
**Using your mold**
After applying a release agent, use wood clamps or strong rubber bands to hold the two mold halves together. If needed, apply modeling clay to the seam just to be sure that nothing leaks out.
I have had very good success with using Knox gelatin to create flexible casts from my molds, but that is by no means the extent of what can be used. Here is a short list of ideas to try:
- Knox / Jell-O gelatin
- Hard candy
- RTV silicone (try Oogoo)
Try holding a small popsicle stick right in the middle of the pour hole during casting to create fun lollipops and chocolate treats!
Don't try to consume any of the castings you produce from these molds! The food safety of ABS / PLA is not really clear, so please just try to use these molds for experimentation, rather than food production.
You must be logged in to post a comment.