Array curves for 3D printing

Hi there,

I asked how to make a spiral yesterday, and the result was great.

I have ran into an issue, I want to know how to achieve the following results for 3D printing, as it is for 3D printing, the result must be with “layer by layer” in mind:

noArray.gh (16.3 KB)

if you have other ideas for exercises like this, please let me know.

Thank you very much.

Twist Component is your friend.

noArray.gh (26.2 KB)

1 Like

some more fun with twist

twistPrint.gh (37.0 KB)

2 Likes

Thank you for this, just a question, do you know a way I can achieve this? Thank you

Here’s an example of how I make things like this:

The key is to make sure you give Loft its control curves in the correct order.

example.gh (10.5 KB)

Right, thank you, very important lesson here.

Another question, when twisting, I thought of simply adding a linear array to make it a continuous loop, the issue would be to line it up, is there a more efficient way to achieve this continuity?

example2.gh (12.9 KB)

The GH Twist component is a bit quirky. You have to pay attention to 2 things: the overall degree/amount of twist, and the extent of your base geometry you want to twist.

The amount of twist is specified in either degrees or radians. The default is radians. Most humans prefer degrees, so that’s what I always use. However, Twist’s A value seems to actually not be degrees, but something larger than that. In the attached example the A value is 0.7, but the amount of twist is much larger than that. Maybe someone else can explain why that is.

The extent of twist is controlled by 2 things: the length of the Axis line, and whether the value of the I (Infinite) parameter is True or False. If it is True, then the entire piece of geometry is twisted, regardless of the length of the Axis line. If it is False (I never use this option) then only the part of the geometry that is the height of the Axis line is twisted, and the rest is left alone. Needless to say this can result in some fairly odd looking geometry.

1 Like

here are two potential ways..

circl_modification.gh (12.2 KB)

1 Like

Got it, I feel like I have learnt a ton, now to play around and try to understand the logic and memorize them, thank you Birk.

Hi Birk, I tried to dissect the script, and I cant seem to figure out why I cannot join the ends here, any tips? Thank you.

Do you have Periodic set to True?

Yes that was the issue, sorry about this.

Graph Mapper is a peculiar object that is tricky to deal with. Lots of people, including me and David Rutten, complain about it. I usually go for a Genepool or a series of Sliders and only use a Graph Mapper as a last resort.

But to answer your question, I think the key to success with Graph Mapper is to be specific about both it’s inputs and output. Specifically, you should have a Domain input that defines the range of input values and a Remap that scales the output values to a range that works for your situation.

Look for some example scripts that show how Graph Mapper needs to be used.

1 Like

Makes sense. Thanks for taking time Birk.