Quick tutorial - How to make an helix or spiral curve 1-16  17-36  37-39

 From: jbshorty 8 Jan 2007  (17 of 39)
 277.17 In reply to 277.14 Hi. I tried the 3-point arc method before i made my last post. It doesn't work as a true spiral. Look closely at the arcs. When you rotate around the view, it looks "wobbly". The curves are all G1, but they don't have correct incline in the Z-axis. Follow this test, and see the result: 1) make the point spiral array 2) draw a 3-point arc. everything seems to be OK. 3) now draw a 3-point circle through the same points as the arc You will see the path of 3-point arc will follow the exact path of the 3-point circle. And the path does not follow the spiral point array... now draw the curve through points, using all points in the spiral array. Zoom in and compare the 3-point arc to the drawn curve, you will see the "wobble"... jonah
Reply More

 From: Michael Gibson 8 Jan 2007  (18 of 39)
 277.18 In reply to 277.16 > I must make 80 Clickty-clac Zoom of the Mouse Wheel before to see a > divergence between 2 arc segments ! > Is it compatible with your estimation of 0.1 degre deviation? Well, when you're zooming in on the endpoint you're looking at positional deviation - that is going to be very tight, by the time you zoom in 80 steps you're seeing a very small deviation that is much, much smaller than the tolerance, so that part is very accurate. I was talking about tangent deviation, though - this is the differences between the end tangent directions at each segment. This is a little easier to see - you can draw a tangent line off of each segment (hide the neighboring one to make sure your snap is on one particular segment), and then you can zoom in to see if there is a gap between these tangent lines. The gap is small (0.1 degrees in this case), but you should see it with only a little bit of zooming, especially if you draw the lines a bit longer. - Michael
Reply More

 From: Frenchy Pilou (PILOU) 8 Jan 2007  (19 of 39)
 Well, well... Can you put an "real helix" beside my "false helix" of course with same dimension :) Attachments:
Reply More

 From: Michael Gibson 8 Jan 2007  (20 of 39)
 277.20 In reply to 277.19 > Can you put an "real helix" beside my "false helix" I've attached here a helix created from Rhino - I think it is approximated to a true helix within 0.01 units. (A NURBS curve cannot actually have a 100% exact shape of a helix unlike a circle, it has to be approximated to some tolerance). Your curve is very, very close - your curve has a maximum deviation of 0.04 units from this one. - Michael Attachments:
Reply More

 From: Frenchy Pilou (PILOU) 8 Jan 2007  (21 of 39)
 277.21 In reply to 277.20 Thx So some visible with the zoom :) I must found an another automatic trick for reduce the deviation :)
Reply More

 From: tyglik 9 Jan 2007  (22 of 39)
 Hi, Add: The helix from an arc or one turn. (it applies to both G0 and G1 connection) The trouble is that if you want to use such segmented curve for sweeping, you must select more than one profile to sweeping along the helix, otherwise you create a segments which can't be joined together! Furthermore, it is necessary to choose a flat mode for sweeping a profiles "smoothly". Petr Attachments:
Reply More

 From: Frenchy Pilou (PILOU) 9 Jan 2007  (23 of 39)
 277.23 In reply to 277.22 @Tyglik Curious that you obtain a perfect helix with an arc! (see my previous posts and my little disappoinment with the "arc":D I will study your method :) But how do you draw the first "spiral" ? With this method? http://moi3d.com/forum/index.php?webtag=MOI&msg=277.3 With your method (very fine for automatic big spiral) (277.3) I obtain that ! Seems not so bad, but I have not the exact Rhino spiral :) Maybe I have not found the good parameters? I have same height, radius, start, end ... not exactly the same numbers of spires!!! That must be the default of my try, I return to see that :) EDITED: 9 Jan 2007 by PILOU Attachments:
Reply More

 From: Frenchy Pilou (PILOU) 9 Jan 2007  (24 of 39)
 @Tyglik Ok That's works very fine ! We must just play with the parameters :) Nb of rep 321 Angle to fill 1800 Step vertical 0.125 And you obtain the Rhino Helix given my Michael here http://moi3d.com/forum/index.php?webtag=MOI&msg=277.20 Seems the same with 0.000000 deviation between the 2 Helix :) So your method is not a "pseudo" Helix but a "real" Helix :) Bravo for the trick! ( Ctrl + C, Erase All, Ctrl + V) that rocks! Now we can make any Spiral or helix easily! EDITED: 9 Jan 2007 by PILOU Attachments:
Reply More

 From: tyglik 9 Jan 2007  (25 of 39)
 277.25 In reply to 277.23 Hi Pilou, >>Curious that you obtain a perfect helix with an arc! >>(see my previous posts and my little disappoinment with the "arc":D >>I will study your method :) No, no Pilou. I only wanted to point a potential problem out when you use a segmented helix for sweeping. Segmented curve, I mean it is possible to separate the helix to the individual turns. There isn't any other stand-alone helix in the picture except the helix round the origin! >>But how do you draw the first "spiral" ? Do you mean the helix round the origin? It was created using bernard-jonah's method. - create one turn of helix (8 + 4 points - Throughpoints - Trim ends) - copy it three times - join all turns (select, Edit/Join) But, it doesn't matter. The segmented arc-helix result in the same trouble. Petr Attachments:
Reply More

 From: jbshorty 9 Jan 2007  (26 of 39)
 277.26 In reply to 277.25 >>Do you mean the helix round the origin? >>It was created using bernard-jonah's method. (ahem)... I believe that is now properly being referred to in scientific terms as the Schbeurd-Shorty spiral... :)
Reply More

 From: tyglik 9 Jan 2007  (27 of 39)
 277.27 In reply to 277.24 >>Now we can make any Spiral or helix easily! However, it still hold true that you should trim the ends of helix or spiral properly. >>( Ctrl + C, Erase All, Ctrl + V) that rocks! You can use "Ctrl+Drag" too, how Michael noticed somewhere else. Petr
Reply More

 From: tyglik 9 Jan 2007  (28 of 39)
 277.28 In reply to 277.26 hehe.... petr
Reply More

 From: Frenchy Pilou (PILOU) 9 Jan 2007  (29 of 39)
 @Tyglik You consider your previous method of the line + "array circular" + copy erase etc...as a false helix?
Reply More

 From: Michael Gibson 9 Jan 2007  (30 of 39)
 Since you guys are all so crazy about helixes, I guess I better try to put in a proper helix/spiral tool... Although it is kind of fun to see all the different workaround methods! :) - Michael
Reply More

 From: jbshorty 9 Jan 2007  (31 of 39)
 277.31 In reply to 277.30 Ok. Next we start a thread about workarounds for parametric fillets. hehe... :)
Reply More

 From: Schbeurd 9 Jan 2007  (32 of 39)
 277.32 In reply to 277.26 >> Make array of points as Schbeurd explains (someday you will have to tell me the correct way of pronouncing this nickname)... >> (ahem)... I believe that is now properly being referred to in scientific terms as the Schbeurd-Shorty spiral... :) Well, as we will meet the day when we will be presented our Nobel prize for this great advance in computer technology, I will invite you to a pub where we will drink a few belgian beers. I can guarantee that after 4 or 5 of the Special beers (the strong ones) you will be able to pronounce "Schbeurd" like a real pro. ;-))) Parametric fillets... Hmmm, interesting ! ;-)))
Reply More

 From: jbshorty 9 Jan 2007  (33 of 39)
 277.33 In reply to 277.32 oooooooh... i see spirals everywhere... :)
Reply More

 From: tyglik 9 Jan 2007  (34 of 39)
 277.34 In reply to 277.29 No, Pilou. Let's summarize... We have discussed four basic method how to create helix using the Transform/Array-Circular command. 1) Bernard's method input: one point - create a points by Array-Circular command with vertical step option - start the Through-Points command and make a helix by picking each point result: one curve with slightly different curvature at the ends 2) Loft method input: one line - create a lines by Array-Circular command with vertical step option - select the lines - start the Loft command and make a surface - extract edge of surface result: one curve with slightly different curvature at the ends 3) Schbeurd-Shorty spiral..... ch ch input: one point - create a points for only one turn of helix by Array-Circular command with vertical step option - copy an extra points at the ends (see 277.13) - start the Through-Points command and make a turn of the helix by picking each point - make multiple copies of this curve, and align them "end to end to end..." (see again 277.13) - select the curves - run the Join command result: one segmented curve (a polycurve with G1 continuity between segments) 4) Pilou's arc method input: one point - create three point by Array-Circular - make an arc from this point - start the Array-Circular command and create appropriate number of copies of arc - select the arcs - run the Join command result: one segmented curve (a wobbled polycurve with G0 continuity between segments) Let's assume that we want to make a spring for each one of the helix, so we draw a circle and sweep the circle along the helix using Sweep command to create a "pipeline". result: - one object - the pipeline - for 1) and 2) method - a lot of objects - segments of pipeline - for 3) and 4) method; moreover, the segmets can not be connected together by Join command! (it strange for G1 continuity, though). When we create a surface using two circles as profile curves, we get one object for 3) and 4) method as well. However, it is better to choose the "flat" mode of twist option when sweep this "type of helix". (Just try selecting a seam of pipeline and you understand why). I hope that it is as clear as day now. Petr
Reply More

 From: Frenchy Pilou (PILOU) 10 Jan 2007  (35 of 39)
 277.35 In reply to 277.34 So If I well underdand only a mathematical script can be obtain a true perfect helix :) Or maybe it's will be more easy when the function "project" a curve on a surface will be made For example a line to a cylinder :)
Reply More

 From: tyglik 17 Jan 2007  (36 of 39)
 277.36 In reply to 277.13 Hi Jonah, I guess it is not necessary to resuscitate this thread, but... jonah wrote: >For a G1 fit between each spiral segment, you have to add 2 points to the ends of each spiral. So it goes like this: >1. Make array of points as Schbeurd explains (someday you will have to tell me the correct way of pronouncing this nickname)... for this example, let's say there are 8 points in the array : >2. Select points 2 & 3, then copy from position of point 1 to poistion of point 8. >3. Select points 6 & 7, then copy from position of point 8 to poistion of point 1. >4. Now draw your curve through all the points. >5. Select curve, and trim excess curve length using original points # 1 and 8. >If you make multiple copies of this curve, and align them end to end to end, they will have G1 continuity... I analyzed in Rhino, and it doesn't matter if you make 2, 3, or 4 extra points the result will still be G1. But if only using one extra point at each end will result in G0 continuity. I couldn't understand why the sweep command creates a surfaces that can't be joined together, although the rail is "perfectly" smooth (G1). It appears that I have discovered the reason. The Rhino's _GCon seems to be quite confusing. While the command prompt displays G1 continuity between turns of helix, the actual tangency deviation can be as great as the tolerance that is hard-coded inside Rhino(?) I think it haven't much to do with Rhino's "Angle tolerance" setting. I haven't manage to find any relationship between that tolerance and indicated continuity. Have a look at Rhino's command history window: :Command: GCon :First curve - select near end: :Second curve - select near end: :Curve end difference = 0 :Radius of curvature difference = 2.66454e-15 :Curvature direction difference in degrees = 0.85681 :Tangent difference in degrees = 0.661446 :Curves are G1. Tangent difference in degrees = 0.661446 !!! So now, I am not sure that method, you have described, is just ok. How do you feel about it, jonah? Petr
Reply More
 Show messages:  1-16  17-36  37-39