When three bubbles intersect, they do so in a very specific way. Here’s what it looks like:

Using the OpenSCAD code for this design included at the bottom of this post you can make your own bubble model with any three bubbles you like. The code will automatically position the bubbles correctly and create the correct surface components that intersect in the center of the model. Or, to print exactly the model above, use the Thingiverse link.

Thingiverse link: http://www.thingiverse.com/thing:438777

Settings: This is very large model that took up most of the build plate of a MakerBot Replicator 2 and printed at .2mm layer height with raft but no supports. It took many hours but we forgot to make a note of exactly how many! So, just, a lot.

Technical notes, math flavor: This model was requested by MoMath to use as a cake centerpiece for mathematician Jean Taylor‘s 70th birthday party. Jean Taylor famously proved that Plateau’s Laws hold for minimal surfaces in her paper The structure of singularities in soap-bubble-like and soap-film-like minimal surfaces. According to Plateau’s Laws, three bubbles will meet at 120-degree angles – just as in the center of the model shown above. However, the three surface components that meet at the 120-degree angle are not flat; they are curved. Each of the three components is a part of a larger sphere whose center lies outside of the bubbles. The three centers are shown by the points F, G, and H in the diagram below, taken from S.M. Blinder’s Wolfram Demonstration Three Coalescing Soap Bubbles.

We used S.M. Blinder’s Demonstration code to get the mathematical descriptions of the points F, G, and H given the radii of the three intersecting bubbles.

Technical notes, failure flavor: This model left a particularly large trail of fails; below is one that was designed with a much coarser mesh. The coarseness of the mesh left some gaps at the joins between the surfaces, which cased the model to separate. In addition we tried to print the entire top without supports, which caused the problem on the smallest sphere that led us to cancel the print. Most models can be made rather coarsely and still look fine, but this particular model needed a mesh with a very high degree of accuracy to even print correctly.

*lot*of triangles in our mesh. The hard part was getting the interior surface segments to contain enough triangles, since they came from much larger spheres. The key to doing this was using very small numbers for the fragment angle and fragment size of the spheres:

*understand*all the mathematics in the code, and also translate the code from Mathematica syntax to OpenSCAD syntax. All this together with the need for high-resolution accuracy meant that this project took many days to put together and get working correctly.

## Leave a Reply