<h2>A Scriptable Process for Generating Multi-Material STL Files:</h2>

<p>I am now using interactive CAD software to define the more complex features of the object I am printing (in the current case, clock faces), and then using OpenSCAD to do the boolean volume operations.  </p>

<p>To print the composite object, I need three STL files, one for each material I am using.  The three parts are the clock body, the translucent optics to conduct the LED lights, and the clock numbers.  </p>

<p>I need:</p>

<ul>
<li>one STL for the body minus the LED optics and minus the numbers.</li>
<li>one STL for the numbers minus the LED optics, and</li>
<li>one STL for the LED optics.</li>
</ul>

<p>The CAD package supports the operations, but every time I change anything, I have to jump through several hoops to combine the three parts, manually and recreate the three objects.  </p>

<p>I had used OpenSCAD to make the optics and the numbers, and they were never in the same coordinate system as the clock body from the interactive CAD package.</p>

<p>So, I scripted it and used OpenSCAD to read the clock body STL and being it into OpenScad.  I transformed it into the common coordinate system.  I then did, one by one, based on a command-line parameter, the boolean operations, rendered the result, and exported the resulting STL file.</p>

<p>When I read the three files into PrusaSlicer, the lined up perfectly and everything worked simply, without and precision hand-eye coordination, and with no drama.</p>

<p>Scripts and command lines work for repeatability far better than squint, drag, and guess.</p>

CC BY-SA 4.0
2020-01-23T09:59:27.587Z
That's a huge step! almost 3 years, but good you came back to this!
Trish
CC BY-SA 4.0
2020-01-23T01:47:26.997Z
2020-01-23T01:47:26.997Z
cmm
<p>You do not necessarily need a specific design tool, you can use any tool you want to create your multiple material product. It is the slicer software that manages the materials by assigning the correct extruder. E.g. Cura is able to join 2 STL files that fit together and assign each part a specific extruder and thus material. Please read more <a href="https://ultimaker.com/en/blog/34012-get-started-with-cura-printing-with-two-colors" rel="nofollow noreferrer">here for instructions</a></p>

CC BY-SA 3.0
2018-03-26T21:24:40.973Z
Thank you @Oscar.  I have the Cura instructions you linked.  So far, I have been using RepetierHost and slic3r.  I will install Cura tonight.  It seems that the key step is the "merge models" step, and coming to understand the constraints on merging.  I'll try answering my own questions with Cura directly.
cmm
CC BY-SA 3.0
2018-03-27T18:41:34.490Z
Hi @Oscar.  The setup probably wasn't right, but I tried "combining" three nested parts, with the thought of printing each in its own material.  Using Cura, I could add the three STL files to the build area.  I could not position them nested within each other (even through the were non-intersecting).  Cura would move them apart to correct my error.  When I tried the "merge" option, it dropped them on top of each other so they had overlapping walls, and I couldn't adjust their relative positions.  I will need to make a better test case.
cmm
CC BY-SA 3.0
2018-03-26T20:49:42.717Z
2018-03-26T20:49:42.717Z
0scar
<p>I'm looking for suggestions for 3D design software which support designing multi-material parts.</p>

<p>I will be printing on a multi-extruder machine based on RepRap firmware.  The printer will handle the files when given a proper g-code file.  Slic3r will produce a proper g-code file given the right input.  STL seems to be single-material, so I am looking for something like AMF files, or any alternative.</p>

<p>My question is, what is available for 3D design software which will produce a geometry file which slic3r (or some other slicing software) will properly process?  I'm not asking for opinions on which software is best.</p>

<p>I believe this is my first question in any StackExchange forum, so if I have trespassed on community standards, it was not my intention.</p>

CC BY-SA 3.0
2018-03-26T19:17:14.653Z
Cura merges 2 STL files, and can be printed for 2 materials. Like printing PLA or nylon with extruder 1 and PVA with extruder 2.
0scar
CC BY-SA 3.0
2018-03-27T15:20:18.723Z
I'm still waiting hopefully for my Kickstarter kit to arrive - it's a resin-style printer which supports rotating among up to 4 different color reservoirs.  But to your needs - there are multi-head extruders which will handle any material, as Oscar says.
Carl Witthoft
CC BY-SA 3.0
2018-03-27T18:38:06.177Z
My problem isn't the extruder or printer, it is finding a workflow that allows "easy" design of multi-material parts, and "easily" rendering those parts on an appropriate printer.
cmm
<3d-design><slicing><multi-material>
Which 3D design softwares make multi-material amf or other design files that slic3r will slice?
cmm
# Which 3D design softwares make multi-material amf or other design files that slic3r will slice?

(Asked by: username_0 on 2018-03-26)

I'm looking for suggestions for 3D design software which support designing multi-material parts.

I will be printing on a multi-extruder machine based on RepRap firmware. The printer will handle the files when given a proper g-code file. Slic3r will produce a proper g-code file given the right input. STL seems to be single-material, so I am looking for something like AMF files, or any alternative.

My question is, what is available for 3D design software which will produce a geometry file which slic3r (or some other slicing software) will properly process? I'm not asking for opinions on which software is best.

I believe this is my first question in any StackExchange forum, so if I have trespassed on community standards, it was not my intention.

**Tags:** 3d-design, slicing, multi-material

> **Comments:**
> **username_1**: Cura merges 2 STL files, and can be printed for 2 materials. Like printing PLA or nylon with extruder 1 and PVA with extruder 2.  
> **username_2**: I'm still waiting hopefully for my Kickstarter kit to arrive - it's a resin-style printer which supports rotating among up to 4 different color reservoirs.  But to your needs - there are multi-head extruders which will handle any material, as Oscar says.  
> **username_0**: My problem isn't the extruder or printer, it is finding a workflow that allows "easy" design of multi-material parts, and "easily" rendering those parts on an appropriate printer.  

---

## 2 answers

### Answer by username_0 on 2020-01-23. Score: 2

## A Scriptable Process for Generating Multi-Material STL Files:

I am now using interactive CAD software to define the more complex features of the object I am printing (in the current case, clock faces), and then using OpenSCAD to do the boolean volume operations.

To print the composite object, I need three STL files, one for each material I am using. The three parts are the clock body, the translucent optics to conduct the LED lights, and the clock numbers.

I need:

* one STL for the body minus the LED optics and minus the numbers.
* one STL for the numbers minus the LED optics, and
* one STL for the LED optics.

The CAD package supports the operations, but every time I change anything, I have to jump through several hoops to combine the three parts, manually and recreate the three objects.

I had used OpenSCAD to make the optics and the numbers, and they were never in the same coordinate system as the clock body from the interactive CAD package.

So, I scripted it and used OpenSCAD to read the clock body STL and being it into OpenScad. I transformed it into the common coordinate system. I then did, one by one, based on a command-line parameter, the boolean operations, rendered the result, and exported the resulting STL file.

When I read the three files into PrusaSlicer, the lined up perfectly and everything worked simply, without and precision hand-eye coordination, and with no drama.

Scripts and command lines work for repeatability far better than squint, drag, and guess.

> **Comments:**
> **username_3**: That's a huge step! almost 3 years, but good you came back to this!  

---

### Answer by username_1 on 2018-03-26. Score: 1

You do not necessarily need a specific design tool, you can use any tool you want to create your multiple material product. It is the slicer software that manages the materials by assigning the correct extruder. E.g. Cura is able to join 2 STL files that fit together and assign each part a specific extruder and thus material. Please read more [here for instructions](https://ultimaker.com/en/blog/34012-get-started-with-cura-printing-with-two-colors)

> **Comments:**
> **username_0**: Thank you @Oscar.  I have the Cura instructions you linked.  So far, I have been using RepetierHost and slic3r.  I will install Cura tonight.  It seems that the key step is the "merge models" step, and coming to understand the constraints on merging.  I'll try answering my own questions with Cura directly.  
> **username_0**: Hi @Oscar.  The setup probably wasn't right, but I tried "combining" three nested parts, with the thought of printing each in its own material.  Using Cura, I could add the three STL files to the build area.  I could not position them nested within each other (even through the were non-intersecting).  Cura would move them apart to correct my error.  When I tried the "merge" option, it dropped them on top of each other so they had overlapping walls, and I couldn't adjust their relative positions.  I will need to make a better test case.  

---

