Loading

MakerBot Print is our newest print-prepration software, which supports native CAD files and STL assemblies,
allows you to interact with all your printers via the Cloud, and many other exciting new features.

Download Now

gaellafond

Helix library for OpenSCAD

by gaellafond Mar 24, 2017
Download All Files

Thing Apps Enabled

Please Login to Comment

Thank you so much for sharing this! It worked perfectly for me. I was able to create a helix segment in just the size / angle I needed.

Glad you like it. That library is far from perfect. OpenSCAD is very limited. There is no was to iterate on the points of a 2D shape, so I have to cheat using "hull", which brings some issues. The "hull" function only works on 3D shapes, so i had to do a very thin linear extrude on the polygon to be able to work with it. OpenSCAD developers have been talking of an API to use external language to do more complex operations. That library is a good example where that would come handy...

[Edit] I just realised that the multimatrix tool could be used here. I'm not sure how right now, I have never done affine transformations with OpenSCAD yet... That's a project for next weekend :)

[Edit] The transformation i need to apply here is not an affine transformation. The multimatrix can't help...

My one is nearly done.
Cheating with the blender3dstyle002.scad I drew a section, and just repeated it.
I just have to clean it up first.
I'm still trying to fill faces better: make it easier to think.

I tried one with a skew translation multmatrix()
...but new headaches arise.

see the last pic on http://www.thingiverse.com/thing:2036771
it takes about 30sec to render, and with lines enabled redraws on the screen a bit sluggish.

3d Printable Round Threaded Lead Screw and Nut

Nice one!
The objective of my library was to offer an alternative to linear_extrude to create helices. I wanted it to follow closely the OpenSCAD API to make it easier to use. I had a look at the multmatrix, that gave me headaches as well :)
I might revisit it soon, using "hull" is a cheap way to solve the problem...