Quick tutorial - How to make an helix or spiral curve
 1-6  7-26  27-39

Previous
Next
 From:  tyglik
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 Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  tyglik
277.28 In reply to 277.26 
hehe.... petr
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Frenchy Pilou (PILOU)
277.29 
@Tyglik
You consider your previous method of the line + "array circular" + copy erase etc...as a false helix?
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
277.30 
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 Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  jbshorty
277.31 In reply to 277.30 
Ok. Next we start a thread about workarounds for parametric fillets. hehe... :)
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Schbeurd
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 Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  jbshorty
277.33 In reply to 277.32 
oooooooh... i see spirals everywhere... :)
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  tyglik
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 Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Frenchy Pilou (PILOU)
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 Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  tyglik
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 Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  jbshorty
277.37 In reply to 277.36 

Hi Peter. Well. Obviously it's not perfect. The sweep is still a polysurface. In Rhino in fact i have a method which is simpler than Moi and will generate it as a single curve segment, so the resulting pipe (thickening the curve) will result in a single Nurbs surface. But this is the most simple method i feel personally for Moi (pun intended!)... In either case, it's OK to use a polysurface for this purpose since coil springs are not manufactured from 3D models. It's only for illustrations of mechanical objects. I think if you really want the curve deviation to be minimized, then we just start with more points in the initial array, and also we create many more extra points on each end before creating the helix to be trimmed away... Not perfect, but makes it simple and quick :)

jonah

SORRY - I was thinking this was in response to my tutorial on making a coil spring! http://www.moi3d.com/forum/index.php?webtag=MOI&msg=317.1 How embarrassing for me :) ...If using this type of spiral to develop an object for manufacture (such as threading on a moulded bottle) then yes i agree it is better to make a single spiral curve by drawing the spiral in it's full length. For most illustrative purposes either method should be OK....

EDITED: 17 Jan 2007 by JBSHORTY

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  tyglik
277.38 In reply to 277.37 
Don't worry about it. Btw, your "how to make a coil spring" tutorial (both here and on Rhino's newsgroup) is perfect. / Petr
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
 From:  jbshorty
277.39 In reply to 277.38 
thanks Petr !
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All

 

 
 
Show messages:  1-6  7-26  27-39