Its that time of year again when thoughts turn towards the festive season and with it seasonal creativity.
What should it be a Christmas tree, a Snowflake, a bauble or a freestanding form in the end all of the above.
Individual snowflakes of diminishing size that can be assembled into a stackable desktop Christmas Tree or threaded on a wire/string and hung from the tree as a bauble.
Or as individual snowflakes either hanging or assembled into free standing interlocking forms
In order to achieve all these forms some specific design requirements were applied.
1: Centre hole for threading to enable hanging or stacking.
2: Centre hole to enable spacers to be fitted to change the stacking or hanging form.
3: Holes on the ends of the arms to enable individual hanging or custom stacking.
4: Arms with sufficient support to enable stacking via the arms.
In order to accomplish this I designed an algorithm using BlocksCAD enabling different size 8 arm snowflakes to be generated and these would then be 3D Printed.
Step 1: Software Design
The software consists on 2 nested loops.
One which determines the width of the snowflake (j) and the other which determines the number of arms (i).
The width is input as a passing parameter W and the number of arms in this instance is fixed at 360/45 = 8
X & Y are passing parameters which enable the position of the final snowflake to be assigned.
Starting from the centre reference point determined by X & Y, cylinders is drawn at 45 degree intervals in a circle.
When the circle is complete the width loop increments and the next circle is drawn outside of the previous circle until the maximum width is complete.
Thick sets the Z height for each snowflake.
The scaling factor can also be adjusted to change the X & Y size of the snowflakes.
The hanging holes at the ends of the arms are applied by subtracting a smaller cylinder within the larger cylinder using the difference command.
The next step is to add the branches from the arms, these extend out at 45 degrees from each cylinder previously created progressively getting longer as each set of arms are added at each new diameter, two arms per cylinder are required.
Finally, these all need to be tied together so that we have a complete and unified snowflake by continuous joins from the centre of each cylinder radiating out from the centre to the outer edge.
Multiple snowflakes of different sizes (a total of 9), are created and arranged to fill the print area by placing the main code in a sub program with passing parameters for X,Y, and size.
The cone for the top of the tree uses a modified version of the main program which stacks progressively smaller snowflakes on top of each other.
Step 2: 3D Printing
Having created the code and run this to generate the required number of snowflakes.
These will then have to be physically created by 3d printing.
The arrangement of the snowflakes are laid out in such a way to minimise gaps and allow them to be moved close together and centralised on the print bed.
The OBJ file was loaded in Cura to generate the 3d print file.
Print settings at full size.
Infill: 50%, Tri Hexagon
Size: 195.1 x 178.4 x 20.0 mm
Step 3: Display
There are many ways to display the snowflakes Individually or grouped.
As groups the snowflakes can be stacked horizontally (forming a Christmas tree), and vertically.
The Christmas tree form can be threaded by the centre hole to enable hanging and with the use of spacers to add separation.
Step 4: Snowflake Tree With Separation
In order to create the free standing Christmas tree with separation you need some separators.
In my case I made the separators from two 2mm diameter ferrules soldered back to back on the same axis with wire.
In order for the ferrules to fit in the centre of the snowflakes a 2mm hole is drilled in the centre as a small hole already exists in the design it makes it easier to align in the centre for drilling.
8 separators are required to build the this variant of the Christmas tree.
Step 5: Hanging Snowflake Tree
In order to create a hanging bauble.
Take a length of 20AWG wire or similar in diameter that will fit through the centre hole in each snowflake.
Cut to length to be a couple of inches longer than the total height of the tree; knot, tie or wrap a flat coil which will act as a stop at the bottom, preventing the wire pulling through.
Thread the other end through the centre hole of each snowflake.
Once all the pieces are in place create a loop or hook at the end with which to hang the bauble.
Step 6: Finally
One tree not enough, you can print a forest of smaller versions in assorted colours.
If you find it interesting enough to print the OBJ file can be found on Thingiverse
Participated in the
Holiday Decorations Speed Challenge