<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>space-filling curve &#8211; Matthew Petroff</title>
	<atom:link href="https://mpetroff.net/tag/space-filling-curve/feed/" rel="self" type="application/rss+xml" />
	<link>https://mpetroff.net</link>
	<description>mpetroff.net</description>
	<lastBuildDate>Sat, 22 Jul 2023 22:40:36 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	
	<item>
		<title>Hilbert Curve Cake</title>
		<link>https://mpetroff.net/2019/04/hilbert-curve-cake/</link>
					<comments>https://mpetroff.net/2019/04/hilbert-curve-cake/#comments</comments>
		
		<dc:creator><![CDATA[Matthew Petroff]]></dc:creator>
		<pubDate>Tue, 02 Apr 2019 03:37:36 +0000</pubDate>
				<category><![CDATA[Baking]]></category>
		<category><![CDATA[3d printing]]></category>
		<category><![CDATA[baking]]></category>
		<category><![CDATA[cake]]></category>
		<category><![CDATA[Hilbert curve]]></category>
		<category><![CDATA[silicone]]></category>
		<category><![CDATA[space-filling curve]]></category>
		<guid isPermaLink="false">https://mpetroff.net/?p=2810</guid>

					<description><![CDATA[Three years ago, I entered an Ashley Book of Knots Cake into the Johns Hopkins University Sheridan Libraries&#8217; third annual Edible Book Festival. For this year&#8217;s contest, I figured I could apply my 3D-printed Hilbert curve microwave absorber research to &#8230; <a href="https://mpetroff.net/2019/04/hilbert-curve-cake/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p><span class="dropcap">T</span>hree years ago, I entered an <a href="https://www.flickr.com/photos/petroffm/26136140386/"><i>Ashley Book of Knots</i> Cake</a> into the Johns Hopkins University Sheridan Libraries&#8217; <a href="https://www.jhunewsletter.com/article/2016/04/edible-book-festival-devours-literature">third annual</a> <a href="https://jhuediblebookfestival.tumblr.com/">Edible Book Festival</a>. For this year&#8217;s contest, I figured I could apply my <a href="https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/">3D-printed Hilbert curve microwave absorber</a> research to craft a cake for Hans Sagan&#8217;s <i>Space-Filling Curves</i> book<sup id="rf1-2810"><a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#fn1-2810" title="H. Sagan, &lt;i&gt;Space-Filling Curves&lt;/i&gt; (Springer-Verlag, 1994). ISBN: 9780387942650. DOI: &lt;a href=&quot;https://doi.org/10.1007/978-1-4612-0871-6&quot;&gt;10.1007/978-1-4612-0871-6&lt;/a&gt;." rel="footnote">1</a></sup> on the eponymous topic. Thus began an endeavor involving thermoplastic, silicone, and sugar.</p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-00.jpg" title="Hilbert curve cake" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-00-640x427.jpg" alt="Hilbert curve cake" width="640" height="427" class="aligncenter size-large wp-image-2827" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-00-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-00-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-00-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a><span id="more-2810"></span></p>
<p>I saw two ways to make a cake shaped as a Hilbert curve, using an appropriately shaped baking mold or painstakingly carving the appropriate shape out of a baked cake, with the former option being the logical path to pursue. This raised the question, how does one create such a mold? Baking molds are generally either metal or silicone, with silicone having the distinct advantage of being much easier to work with for such a shape, since it can be cast at room temperature. Thus, one needs to create a mold with which to cast the silicone baking mold. Fortunately, 3D-printing is well suited for this, and I already had experience 3D-printing Hilbert curve geometries.</p>
<p>Starting from my existing <a href="https://doi.org/10.5281/zenodo.1322839">Hilbert Curve solid models</a>, I designed a two-part mold for a third-order geometric approximation of the Hilbert Curve. Compared to a single-part mold, a two-part mold allows for a thinner silicone wall thickness, which reduces silicone material usage and makes it easier to turn the mold inside-out, a necessary step in removing the eventual cake from the baking mold. This mold was printed from PETG&mdash;for no particular reason besides having it around&mdash;on a Lulzbot TAZ 6 printer; as the mold is rather large, a printer with a large build volume is necessary. A 1.2&thinsp;mm nozzle was used to reduce the printing time, a single wall extrusion<sup id="rf2-2810"><a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#fn2-2810" title="This led to some gaps in the part&#8217;s wall, which allowed some silicone to leak into the interior of the mold, making removal more difficult." rel="footnote">2</a></sup> and 10% infill were used to reduce material usage, and a raft was printed below the part to aid with removal from the printer&#8217;s bed. When generating the G-code, a solid layer was added just below the Hilbert curve geometry to ensure that it would print correctly with the low infill percentage.</p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-01.jpg" title="Hilbert curve cake plastic mold top" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-01-640x640.jpg" alt="Hilbert curve cake plastic mold top" width="640" height="640" class="aligncenter size-large wp-image-2828" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-01-640x640.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-01-150x150.jpg 150w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-01-300x300.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-01-1280x1280.jpg 1280w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-01.jpg 2000w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-02.jpg" title="Hilbert curve cake plastic mold bottom" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-02-640x640.jpg" alt="Hilbert curve cake plastic mold bottom" width="640" height="640" class="aligncenter size-large wp-image-2829" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-02-640x640.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-02-150x150.jpg 150w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-02-300x300.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-02-1280x1280.jpg 1280w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-02.jpg 2000w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p>Once the mold was assembled, 1&thinsp;kg of food-safe silicone<sup id="rf3-2810"><a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#fn3-2810" title="&lt;a href=&quot;https://www.smooth-on.com/products/smooth-sil-940/&quot;&gt;Smooth-On Smooth-Sil 940&lt;/a&gt;" rel="footnote">3</a></sup> was mixed, vacuum degassed, poured into the mold, and allowed to cure.</p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-03.jpg" title="Assembled Hilbert curve cake plastic mold" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-03-640x640.jpg" alt="Assembled Hilbert curve cake plastic mold" width="640" height="640" class="aligncenter size-large wp-image-2830" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-03-640x640.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-03-150x150.jpg 150w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-03-300x300.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-03-1280x1280.jpg 1280w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-03.jpg 2000w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-04.jpg" title="Hilbert curve cake plastic mold filled with silicone" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-04-640x640.jpg" alt="Hilbert curve cake plastic mold filled with silicone" width="640" height="640" class="aligncenter size-large wp-image-2831" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-04-640x640.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-04-150x150.jpg 150w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-04-300x300.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-04-1280x1280.jpg 1280w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-04.jpg 2000w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p>While I had hoped that the two-part plastic mold would allow the silicone mold to be easily removed once it had cured, this was an incredibly naive notion. After all attempts to carefully disassemble the plastic mold and remove the cured silicone failed, I ended up smashing the plastic mold to bits in order to free the silicone mold.<sup id="rf4-2810"><a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#fn4-2810" title="The single wall extrusion helped here, as did the single bottom layer." rel="footnote">4</a></sup></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-05.jpg" title="Remnants of Hilbert curve cake plastic mold after removing cured silicone" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-05-640x427.jpg" alt="Remnants of Hilbert curve cake plastic mold after removing cured silicone" width="640" height="427" class="aligncenter size-large wp-image-2832" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-05-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-05-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-05-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p>I then thoroughly washed the silicone mold and was finally ready to begin baking. To increase my chances of success, I decided to use a recipe meant for a Bundt pan, a lemon pound cake.<sup id="rf5-2810"><a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#fn5-2810" title="I also like the taste." rel="footnote">5</a></sup> The recipe is below, courtesy of my mother.</p>
<blockquote><p>
2.5 cups sugar<br />
1 cup butter<br />
4 eggs<br />
1 teaspoon vanilla extract<br />
0.5 teaspoon lemon extract<br />
1 cup milk<br />
1 tablespoon lemon juice<br />
3 cups flour<br />
0.5 teaspoon baking soda</p>
<p>In mixing bowl, cream together sugar and butter until light and fluffy. Add eggs one at a time, beating well after each. Stir in vanilla and lemon extracts. Mix lemon juice into milk. Thoroughly sift together the flour and baking soda. Add flour mixture to creamed mixture alternately with milk solution, beating well after each addition. Pour into greased mold.
</p></blockquote>
<p>The silicone baking mold was placed into an 8&#8243; square cake pan for support<sup id="rf6-2810"><a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#fn6-2810" title="By happenstance, it fit almost perfectly; I had sized the mold based on silicone and available print volumes." rel="footnote">6</a></sup> and thoroughly greased with shortening; while silicone baking molds don&#8217;t need to be greased, in theory, I decided it was best to do so if I were to have any chance of removing the complicated cake geometry from the mold in one piece.</p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-06.jpg" title="Greased Hilbert curve cake mold" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-06-640x427.jpg" alt="Greased Hilbert curve cake mold" width="640" height="427" class="aligncenter size-large wp-image-2833" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-06-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-06-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-06-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-07.jpg" title="Filling Hilbert curve cake mold with batter" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-07-640x427.jpg" alt="Filling Hilbert curve cake mold with batter" width="640" height="427" class="aligncenter size-large wp-image-2834" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-07-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-07-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-07-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-08.jpg" title="Hilbert curve cake mold filled with batter" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-08-640x427.jpg" alt="Hilbert curve cake mold filled with batter" width="640" height="427" class="aligncenter size-large wp-image-2835" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-08-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-08-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-08-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p>The cake was then baked at 350&deg;F for 135 minutes, with a pan of water also in the oven to try to prevent the top crust from hardening too much. As the mold does not have a hole in the center like a Bundt pan does, this baking time is considerably longer than what was specified by the original recipe. I learned this the hard way, since my first attempt came out under-baked, ruining the curve geometry. Once removed from the oven, I allowed the cake to cool for half an hour, before placing it in the freezer for seven hours; I reasoned that a frozen cake would be the least likely to break apart while attempting to remove it from the mold. Once I removed the frozen cake from the freezer, I was able to flip it over and slowly and carefully turn the silicone mold inside-out to remove the cake in one piece, starting from the corners where the curve does not end.<sup id="rf7-2810"><a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#fn7-2810" title="One of the ends of the curve did break off partially, but it was easy to reattach." rel="footnote">7</a></sup></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-09.jpg" title="Baked Hilbert curve cake in mold" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-09-640x427.jpg" alt="Baked Hilbert curve cake in mold" width="640" height="427" class="aligncenter size-large wp-image-2836" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-09-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-09-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-09-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-10.jpg" title="Removing Hilbert curve cake from mold" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-10-640x427.jpg" alt="Removing Hilbert curve cake from mold" width="640" height="427" class="aligncenter size-large wp-image-2837" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-10-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-10-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-10-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p>I then flipped the cake back over and sliced the bottom flat.</p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-11.jpg" title="Slicing bottom off of Hilbert curve cake" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-11-640x427.jpg" alt="Slicing bottom off of Hilbert curve cake" width="640" height="427" class="aligncenter size-large wp-image-2838" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-11-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-11-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-11-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-12.jpg" title="Hilbert curve cake before decoration" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-12-640x427.jpg" alt="Hilbert curve cake before decoration" width="640" height="427" class="aligncenter size-large wp-image-2839" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-12-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-12-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-12-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p>Finally, the cake was ready for its finishing touch, a lemon glaze, mixed from a ratio of one cup confectioner&#8217;s sugar to two tablespoons lemon juice. I carefully and methodically brushed on four coats of glaze using a silicone basting brush, completing the cake.</p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-13.jpg" title="Hilbert curve cake" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-13-640x427.jpg" alt="Hilbert curve cake" width="640" height="427" class="aligncenter size-large wp-image-2840" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-13-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-13-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-13-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-14.jpg" title="Hilbert curve cake" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-14-640x640.jpg" alt="Hilbert curve cake" width="640" height="640" class="aligncenter size-large wp-image-2841" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-14-640x640.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-14-150x150.jpg 150w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-14-300x300.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-14-1280x1280.jpg 1280w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-14.jpg 2000w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-15.jpg" title="Hilbert curve cake at Edible Book Festival (sign courtesy Special Collections student employees)" data-sbox="2810"><img loading="lazy" decoding="async" src="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-15-640x427.jpg" alt="Hilbert curve cake at Edible Book Festival" width="640" height="427" class="aligncenter size-large wp-image-2842" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-15-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-15-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-15-1280x853.jpg 1280w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p>Sadly, I didn&#8217;t win anything, just like last time, but there was stiff competition from many excellent cakes. The model files from the mold <a href="https://cdn0.mpetroff.net/wp-content/uploads/2019/04/hilbert-curve-cake-mold.tar.xz">are available</a>.</p>
<hr class="footnotes"><ol class="footnotes" style="list-style-type:decimal"><li id="fn1-2810"><p >H. Sagan, <i>Space-Filling Curves</i> (Springer-Verlag, 1994). ISBN: 9780387942650. DOI: <a href="https://doi.org/10.1007/978-1-4612-0871-6">10.1007/978-1-4612-0871-6</a>.&nbsp;<a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#rf1-2810" class="backlink" title="Return to footnote 1.">&#8617;</a></p></li><li id="fn2-2810"><p >This led to some gaps in the part&#8217;s wall, which allowed some silicone to leak into the interior of the mold, making removal more difficult.&nbsp;<a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#rf2-2810" class="backlink" title="Return to footnote 2.">&#8617;</a></p></li><li id="fn3-2810"><p ><a href="https://www.smooth-on.com/products/smooth-sil-940/">Smooth-On Smooth-Sil 940</a>&nbsp;<a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#rf3-2810" class="backlink" title="Return to footnote 3.">&#8617;</a></p></li><li id="fn4-2810"><p >The single wall extrusion helped here, as did the single bottom layer.&nbsp;<a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#rf4-2810" class="backlink" title="Return to footnote 4.">&#8617;</a></p></li><li id="fn5-2810"><p >I also like the taste.&nbsp;<a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#rf5-2810" class="backlink" title="Return to footnote 5.">&#8617;</a></p></li><li id="fn6-2810"><p >By happenstance, it fit almost perfectly; I had sized the mold based on silicone and available print volumes.&nbsp;<a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#rf6-2810" class="backlink" title="Return to footnote 6.">&#8617;</a></p></li><li id="fn7-2810"><p >One of the ends of the curve did break off partially, but it was easy to reattach.&nbsp;<a href="https://mpetroff.net/2019/04/hilbert-curve-cake/#rf7-2810" class="backlink" title="Return to footnote 7.">&#8617;</a></p></li></ol>]]></content:encoded>
					
					<wfw:commentRss>https://mpetroff.net/2019/04/hilbert-curve-cake/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
		<item>
		<title>3D-Printed Hilbert Curve Absorbers</title>
		<link>https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/</link>
					<comments>https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/#comments</comments>
		
		<dc:creator><![CDATA[Matthew Petroff]]></dc:creator>
		<pubDate>Sat, 11 Aug 2018 22:21:21 +0000</pubDate>
				<category><![CDATA[Research]]></category>
		<category><![CDATA[3d printing]]></category>
		<category><![CDATA[absorber]]></category>
		<category><![CDATA[Hilbert curve]]></category>
		<category><![CDATA[paper]]></category>
		<category><![CDATA[space-filling curve]]></category>
		<guid isPermaLink="false">https://mpetroff.net/?p=2674</guid>

					<description><![CDATA[Fused filament fabrication (FFF) 3D printers are good for many things,1 but production of sharp points is not among those strengths. Thus, the traditional structure of millimeter wave absorbers&#8212;a periodic array of square pyramids&#8212;is poorly suited for production via FFF &#8230; <a href="https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
										<content:encoded><![CDATA[<p><span class="dropcap">F</span>used filament fabrication (FFF) 3D printers are good for many things,<sup id="rf1-2674"><a href="https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/#fn1-2674" title="A &lt;a href=&quot;https://www.lulzbot.com/store/printers/lulzbot-taz-6&quot;&gt;LulzBot TAZ 6&lt;/a&gt;, in this case." rel="footnote">1</a></sup> but production of sharp points is not among those strengths. Thus, the traditional structure of millimeter wave absorbers&mdash;a periodic array of square pyramids&mdash;is poorly suited for production via FFF printers. Millimeter wave absorbers serve a crucial role in <a href="https://en.wikipedia.org/wiki/Cosmic_microwave_background">Cosmic Microwave Background (CMB)</a> telescopes by terminating stray light, which is necessary for reducing systematic errors. Not only are the points difficult to produce; they&#8217;re also fragile, since a print is generally weakest along its layer lines. Thus, a new geometry was needed, as is detailed in my paper titled <i><a href="https://arxiv.org/abs/1808.00820">A 3D-printed broadband millimeter wave absorber</a></i>.</p>
<p><a href="https://en.wikipedia.org/wiki/Space-filling_curve">Space-filling curves</a> such as the <a href="https://en.wikipedia.org/wiki/Hilbert_curve">Hilbert curve</a> completely fill the unit square. Furthermore, the Hilbert curve can be described by a sequence of physically realizable geometric approximations. Tracing a wedge along such an approximation creates a geometry with similar optical properties as a pyramidal array but with enhanced mechanical robustness. Importantly, this geometry can be printed without repeatedly starting and stopping extrusion, making it well suited for FFF printers.</p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber-detail.jpg" title="Hilbert Curve Absorber (Detail)" data-sbox="2674"><img loading="lazy" decoding="async" class="aligncenter wp-image-2680 size-large" title="Hilbert Curve Absorber (Detail)" src="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber-detail-640x427.jpg" alt="Hilbert Curve Absorber (Detail)" width="640" height="427" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber-detail-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber-detail-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber-detail.jpg 1200w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a><span id="more-2674"></span></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber.jpg" title="Hilbert Curve Absorber" data-sbox="2674"><img loading="lazy" decoding="async" class="aligncenter wp-image-2681 size-large" title="Hilbert Curve Absorber" src="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber-640x640.jpg" alt="Hilbert Curve Absorber" width="640" height="640" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber-640x640.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber-150x150.jpg 150w, https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber-300x300.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2018/08/hilbert-absorber.jpg 1200w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p>When such a geometry is printed out of a carbon-loaded plastic, it makes a reasonably effective millimeter wave absorber. A prototype was manufactured out of a conductive HIPS filament<sup id="rf2-2674"><a href="https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/#fn2-2674" title="PS-715 from &lt;a href=&quot;http://www.moderndispersions.com/&quot;&gt;Modern Dispersions, Inc.&lt;/a&gt;" rel="footnote">2</a></sup> and was measured to have sub-percent reflection in the frequency range 63–215 GHz. Proto-pasta&#8217;s off-the-shelf <a href="https://www.proto-pasta.com/pages/conductive-pla">Conductive PLA</a> filament also works to an extent, but it&#8217;s too conductive for this use, which results in increased reflection. When printing the bottom layers of the model, aligning the fill lines with the sides of the square instead of on the diagonal seems to make the print less likely to prematurely peel off of the print bed. For the HIPS, using a higher bed temperature for the bottom layer may also help, but if too high a bed temperature is maintained for the rest of the print, the print ends up with some undesirable waviness in the wedge cross section.</p>
<p>The Hilbert curve is not the only space-filling curve that works in this application. The 37a-1 generalized Gosper curve,<sup id="rf3-2674"><a href="https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/#fn3-2674" title="Fukuda, Hiroshi, Michio Shimizu, and Gisaku Nakamura. &#8220;&lt;a href=&quot;https://kilin.clas.kitasato-u.ac.jp/museum/gosperex/343-024.pdf&quot;&gt;New Gosper space filling curves.&lt;/a&gt;&#8221; In &lt;i&gt;Proceedings of the International Conference on Computer Graphics and Imaging (CGIM2001)&lt;/i&gt;, vol. 34, p. 34&ndash;38. 2001." rel="footnote">3</a></sup> which roughly fills a regular hexagon, was also prototyped, as it can more easily tile the interior of a circle. Various other space-filling curves, such as the <a href="https://en.wikipedia.org/wiki/Peano_curve">Peano curve</a>, could work in some applications, but they may not have a uniform polarization response, an important property of absorbers used in polarization-sensitive CMB instruments.</p>
<p>The code for producing the Hilbert curve geometry was written using <a href="https://github.com/dcowden/cadquery">CadQuery</a>. The code and resulting solid models are available from <a href="https://doi.org/10.5281/zenodo.1322839">DOI:10.5281/zenodo.1322839</a>. See the paper, <a href="https://arxiv.org/abs/1808.00820">arXiv:1808.00820</a>, for more details.</p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber.jpg" title="37a-1 Gosper Curve Absorber" data-sbox="2674"><img loading="lazy" decoding="async" class="aligncenter wp-image-2695 size-large" title="37a-1 Gosper Curve Absorber" src="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber-640x640.jpg" alt="37a-1 Gosper Curve Absorber" width="640" height="640" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber-640x640.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber-150x150.jpg 150w, https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber-300x300.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber.jpg 1200w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<p><a href="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber-detail.jpg" title="37a-1 Gosper Curve Absorber (Detail)" data-sbox="2674"><img loading="lazy" decoding="async" class="aligncenter wp-image-2696 size-large" title="37a-1 Gosper Curve Absorber (Detail)" src="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber-detail-640x427.jpg" alt="37a-1 Gosper Curve Absorber (Detail)" width="640" height="427" srcset="https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber-detail-640x427.jpg 640w, https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber-detail-300x200.jpg 300w, https://cdn0.mpetroff.net/wp-content/uploads/2018/08/gosper-absorber-detail.jpg 1200w" sizes="auto, (max-width: 640px) 100vw, 640px" /></a></p>
<hr class="footnotes"><ol class="footnotes" style="list-style-type:decimal"><li id="fn1-2674"><p >A <a href="https://www.lulzbot.com/store/printers/lulzbot-taz-6">LulzBot TAZ 6</a>, in this case.&nbsp;<a href="https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/#rf1-2674" class="backlink" title="Return to footnote 1.">&#8617;</a></p></li><li id="fn2-2674"><p >PS-715 from <a href="http://www.moderndispersions.com/">Modern Dispersions, Inc.</a>&nbsp;<a href="https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/#rf2-2674" class="backlink" title="Return to footnote 2.">&#8617;</a></p></li><li id="fn3-2674"><p >Fukuda, Hiroshi, Michio Shimizu, and Gisaku Nakamura. &#8220;<a href="https://kilin.clas.kitasato-u.ac.jp/museum/gosperex/343-024.pdf">New Gosper space filling curves.</a>&#8221; In <i>Proceedings of the International Conference on Computer Graphics and Imaging (CGIM2001)</i>, vol. 34, p. 34&ndash;38. 2001.&nbsp;<a href="https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/#rf3-2674" class="backlink" title="Return to footnote 3.">&#8617;</a></p></li></ol>]]></content:encoded>
					
					<wfw:commentRss>https://mpetroff.net/2018/08/3d-printed-hilbert-curve-absorbers/feed/</wfw:commentRss>
			<slash:comments>1</slash:comments>
		
		
			</item>
	</channel>
</rss>

<!--
Performance optimized by W3 Total Cache. Learn more: https://www.boldgrid.com/w3-total-cache/?utm_source=w3tc&utm_medium=footer_comment&utm_campaign=free_plugin

Page Caching using Disk: Enhanced 
Content Delivery Network via Amazon Web Services: CloudFront: cdn0.mpetroff.net
Minified using Disk

Served from: mpetroff.net @ 2026-03-31 01:32:28 by W3 Total Cache
-->