Edit: 15 Jun 2017
Around the time I was preparing this blog page I started a separate message thread on the Craftware forum about slicing this part. It ended up being a very lengthy thread with a lot of sophisticated and obscure information about overlapping shells (which this part has), the nature of STL files, different slicing programs, etc. The net result was I added some additional design steps to the method of creating this part in order to produce a final STL file that does not contain the errors of the original one.
Rather than replace the original STL file with the new one I have added it here: loftshape1-redone. So get this one if you have trouble slicing the one in the original posting below.
Click this link to see the message thread that explains in detail what the problem is with this part and how I fixed it.
Now, back to the original blog page.
Here is an image of a part that I recently made by modifying some geometry originally used by an architect student:
As you can see it is a vase type object formed by several filleted pentagons arranged vertically and used as control curves for a loft surface.
In this form the part looks fine but is not particularly interesting or unique. So I applied a twist to the part to get this result:
What happened here is a simple vertical twist of 36 degrees – I’ll explain why 36 is important later on. But already the part has a more interesting shape and appearance. So how about adding a reverse twist? That’s really easy to do, and this is the result:
I thought this was a much better overall shape and decided to print it. The print took 33 hrs. 17 min. to finish; here it is at the 72% mark
And here is the finished print:
This 3D rotation can help see what the actual shape is like:
You can download the STL file for this part by clicking this link.
How to do The Twist
I use the Grasshopper add-on to Rhin3D for designing all my parts. This makes it very easy to do design modification any time. See this blog page for more info about Grasshopper and why I use it.
Here are the grasshopper components that do the double twist:
The box labelled Twist is the final result I showed above. It has 3 inputs: G is the initial, untwisted geometry shown in the first image above. X is the twist axis, which in this case is a vertical line with origin at 0,0,0. A is the amount of twist (the angle), but is specified in radians and not degrees. (Yes, this is an annoying Grasshopper quirk.) So Rad converts degrees to radians.
The slider named B allows me to specify any value for degrees between 0 and 360. These limits are totally changeable; I just picked 0 to 360 for convenience. I made the single twist image shown above with just these 3 components. A clever trick is how to generate the reverse or double twist, and that is done by adding the A-B (A minus B) box. That box has 0 as A and takes the input from the slider as B, so the net result of A – B is -36, and this is fed into the Rad box along with the original value of 36. This causes Rad to output 2 separate radian values corresponding to 36 and -36 degrees.
Voila! The double twist is the result.
Why is 36 degrees important?
The answer is – because a pentagon has sides that are at an angle of 72 degrees to each other. 72 = 360/5. Think about what happens with a single twist – the top edge of the part will be twisted by this amount relative to the bottom edge. If it gets twisted in the opposite direction, the top edge of the second twist will not line up with the top edge of the first twist unless the total difference of the 2 twists is a multiple of 72 degrees.
Here’s what the part looks like with a double twist of 45 degrees:
See what I mean? This is not good. The total twist angle has to always be an even multiple of 72.
So what about a larger value – like 36 x 3 = 108? Well here’s what that looks like:
This is clearly a more complex part, but to me the added complexity is more distracting than anything else. So this is another example of the old adage “The best solution is usually the simplest one.” And doing the double twist is really quite simple.
Last Update: 15 Jun 2017