Do you wanna build a snowflaaaake?
Well, BlocksCAD turns out to be a lot of fun! For the snowflake contest, I wanted something a bit more dynamic than just a shape, without losing sight of the original snowflake idea... so I added posability!
Ball Joint Fun
As is hopefully obvious in the photos, each snowflake arm has a series of ball joints, designed to allow rotation around the axis of that arm. So, the arm can be twisted and shaped as desired! The shape of the ball joint should prevent any undue movement in other directions, though, to avoid the shape collapsing! Also, the rotating parts are symmetrical across the axis of rotation, so that things remain balanced, and gravity can't mess up your designs.
About Those Colours...
You'll notice that my print has some nifty colour things going on! Nothing too tricky, though, just a filament change on four different occasions so that a white outer encloses a light blue inner and a dark blue core, for a fancy icy look! An alternative might be to just change colours half-way through, then spin alternating sections around for a cool multicolour effect.
The Code, and Test Printing
The BlocksCAD code is attached, and has a reasonable amount of comments stored against the blocks themselves. Also, there's an image uploaded here that has some annotations, too.
What is useful to know, though, is that there are a few parameters at the top of the code that can be helpful when testing the ball joints on your specific printer. After all, you don't want to print the whole design only to find that the joints are fused solid! The important settings are the number of arms and segments per arm (set those to 1 and 2, respectively, for a test setup), and the flag to omit the "whiskers".
Oh, and the gap parameter that controls the tolerance for the ball joint, that's important too :)
I hadn't encountered a code-based modelling package that was aimed at students before, and I was concerned that it would be somewhat limiting. Really, though, there was nothing it wouldn't do, and hidden behind the colourful blocks are some pretty useful features for structuring code. I really like the passion and enthusiasm that's gone into making this stuff accessible and appealing!
(oh yeah, and the block clean-up feature, that is just awesome #hearteyes)