Voronoi shoe rack

“this whole thing is a shoe rack…but not a real shoe rack, more like a freaky shoe rack”

We had a pile of shoes that needed sorting out.

So I made a shoe rack. I wanted some kind of lattice cut-outs in the shelves and back for easy airflow around wet and muddy shoes, but Fusion 360 isn’t the best for making such patterns. As I can’t draw for crap, I wanted a space-filling algorithm to draw a pattern for me. So, yeah, Voronoi. I know it’s a computational cliche and over-used, but wtf, it’s easy and there’s a plug-in for Fusion 360.

The material was going to be okume ply, but I ended up with okume skins on poplar ply. This has very lightly coloured edges which really showed any burning from an overheated tool. The solution was a single flute compression bit which stayed much cooler than a two flute. Top is two flute, bottom is single.

The joints are all slightly hidden tenons into dogbone mortises. The intention was to make this self-jigging. It was close, but I put the tenons in the middle of pieces, so the corners needed some clamping to get them to behave. Lesson learnt – tenons at ends as well as centres of joints.

Danish oil and rubbing with non-steel steel wool pads to finish and shoes are now organised.

Routing an elevation map of the Sounds – Pipi & Ant’s wedding present

I wanted to make a wedding present for a couple of friends who live out in the Marlborough Sounds, like way out the back, beyond tarmac and electricity and plumbing. The Sounds make for interesting maps and I’d been playing with digital elevation maps and native woods, so I made them a map, with the land from tawa and the sea from tōtara.

Their family has been there for generations. Their own maps are not digital or geographic, but social. It’s all “turn at John’s house”, or “past the spot where the person did the thing”. So having a map that’s physical, that can be touched, seemed the way to balance the digital with the real world.

First problem was finding the wood. I wanted a light wood for the land to contrast with tōtara sea. Tawa is an ideal colour, fine-grained for detail, and good to carve but getting hold of some was a challenge. It is no longer produced commercially. I had hoped to use old floor boards, but round here building recycling places can do you kauri or matai and that’s it. In the end, asking around revealed some in a shed in Rotorua (thanks, Russell). This stock also set the size, 200 mm high, less a bit for squaring off.

The limited stock meant I also had to get it right, as I had enough for three tries. This took two trials on scrap wood, one screw-up with the good wood, and the second one came out good enough.

To get from digital map to carved wood, the tool chain goes:

  1. Get the digital elevation data
  2. Turn that into a greyscale image
  3. Prepare wooden blank
  4. Carve contours
  5. Finish


Get the digital elevation data

Koordinates have a great interface to the LINZ height map of NZ, with 15 metre resolution across all of NZ, courtesy of the School of Surveying. It’s not the 1 metre resolution that Wellington has, but the Sounds are steep enough that this gives sufficient relief.

I don’t have fancy GIS software, so I just exported the datasets as PDFs. The resolution of the export is way below that of the datasets, but the final piece is less than 200 mm high so I worked with files around 800 pixels high.

Turn height data into a greyscale image

In a simple world, I’ve have just taken the greyscale from the PDF, stretched the histogram so the highest point on the map was white, the lowest was black, sent that to PhotoVCarve and be done with it.

However, I wanted the carving to hit the tōtara for the sea and the tawa for the land and that needs a clear division in carved height between the land and sea. As the greyscale value sets the height, that means a clear division in value between land and sea. The sea is zero metres height (by definition) and the land ranges from +1 to +775 for Mount Shewell. That’s going to be physically mapped into 0..19 mm of wood. Getting the zero to +1 metre contour to line up with the interface between the two woods wouldn’t happen. So I cheated, to give a large physical height step between the sea and land by artificially setting up a large value step in the image file. That step gave me some leeway to get the heights right and line up the coastline with the interface between the wood.

Using a map as a mask, I pulled out the land and tweaked the value to run from 20..255.

Reversing that mask, I pulled out the sea and set the value to zero.

Combining the two gives the greyscale image to feed into PhotoVCarve.

You can see the height step in the histogram, it’s the gap between black and everything else.


Prepare wooden blank

To get a good flat interface between the tawa and tōtara, I faced both in the router then clamped up the stack. I really should get a vacuum table for this.

Using Fusion 360 to generate the toolpaths, I faced off the top and cut a slot around the outside of the carved area. This is really due to a limitation of PhotoVCarve – it carves the first column of image data just the same as all the rest. That means for fine deep work, the first cut will be blind and full depth, whereas all the rest will be flank cuts. If you’re starting at the edge of a piece of work, that’s fine, but if you want a carving in the middle of a piece, then you need to cut a surrounding groove. Yes, lining up facing, grooves, and carving cuts was a pain.


Carve contours

PhotoVCarve has it’s quirks, but it’s the software for this.

This took a while, about four hours. Admittedly, I was using a tiny step-over of 0.2 mm.

And then cut the outer edges and part off.



Straight off the router it looked pretty good. There was some minor fuzzing on some grain angles that tidied up with some scouring pad.

I used Danish oil to finish it off, but as I did, the beautiful contrast between the woods, the whole point of this palaver just vanished. The tawa turned the same colour as the tōtara. I was not happy to discover that tawa did this.

It turns out, however, that tawa is a joker. Over the next week, it turned back to that light colour. Thanks, tawa.

Final result:

And then we went to the Sounds to deliver it.