Is there a way in Rhino to wrap a helix around a surface? Like what is done here http://www.rainnea.com/cnc_t_4axis.htm
I started the attached script to do 4-axis finishing but it runs soooo slow, I think it is not worth completing.
Colin
Is there a way in Rhino to wrap a helix around a surface? Like what is done here http://www.rainnea.com/cnc_t_4axis.htm
I started the attached script to do 4-axis finishing but it runs soooo slow, I think it is not worth completing.
Colin
Hi Colin,
Are the points important, the newly created helix, or do you need both?
If you only need the curve, try the Pull command. It will wrap the helix around the surface. If you need the curve with points, you could probably use the Divide command to do that.
I notice that your script doesn't produce as smooth of a helix as the pull command does (on a cylinder).
Also, if you create a line normal to the surface, from your script's new curve, the normal line doesn't intersect the original helix. Using the Pull command, it does.
Does this help, or have I missed the point?
Dan
Last edited by Dan B; 07-24-2006 at 08:20 AM. Reason: Adding another comment
(Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)
Hi Dan,
The Pull command doesn’t seem to work. I drew a surface that resembled a beer bottle and the helix pulled to the surface had a varying pitch and never wrapped all the way around in some spots.
The points are what I was going to use to calculate the X,Z,B coordinates (Y=0 and the x axis is the center of rotation). The new helix is just to visualize the tool path. The tolerance value in the script affects the smoothness of the helix, but the smaller the tolerance the slower the script runs.
The Pull command and my script do not work on polysurfaces so I am going to start over.
Thanks for your help
Colin
Sorry I wasn't much help. I tested your script on a simple cylinder only. If I get some time today, I will play with it a little more and see if I can speed it up. One thing to note is that using a For Each statement almost always runs slower than using the Ubound of the array. For example:
i=0 to Ubound(arrObjects(i))
<do something here>
Next
may be better than:
For Each strObject in arrObjects
<do something here>
Next
Hope this helps a little.
Dan
(Note: The opinions expressed in this post are my own and are not necessarily those of CNCzone and its management)