cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Showing results for 
Search instead for 
Did you mean: 

Community Tip - Need help navigating or using the PTC Community? Contact the community team. X

Helical Curve

John.Pryal
14-Alexandrite

Helical Curve

Hi all, I think I already know the answer to this question before I even ask it, but here goes anyway. Is it possible in Creo to create a helical curve which follows a profile, in a single feature? A colleague of mine who works with Catia is able to do this. I know I can achieve the same geometry using a helical sweep & intersect with my revolved profile but this is 3 or 4 features versus 1 (2 including the profile curve) in Catia, plus, its much easier to set up. Anyone who also knows Catia probably knows the feature I speak of, its the Helical Curve Definition with 'Profile' selected for the radius variation. Hopefully this makes sense.

 

Regards

John 

19 REPLIES 19

Hi, This can be done using Creo with ease!

Simply create a datum curve defined by an equation! (or in this case three equations).

The only other feature required is a csys.

Creo Helical CurveCreo Helical Curve

I uploaded this model as an example of a helical curve which is defined by three simple parametric equations...

x = 5*t
y = 2*cos(t*360)
z = 2*sin(t*360)

In this case,

The helix is projected along the x axis with pitch = 5 units.
The shape is defined by the equations for a circle in the y-z plane using cartesian co-ordinates, with radius = 2 units.
The helix is right handed.

t is a system parameter which varies between 0 and 1.

Please open the model and explore its interesting properties.

John.Pryal
14-Alexandrite
(To:jhaston-3)

Thank you for your reply, but this does not answer my original question. I have used this method in the past, it creates a cylindrical helix, it does not follow a profile, it has a constant radius, in your case 2.

I realized after making my post that i can almost achieve my goal but i end up with a redundant surface which i guess isn't the end of the world. I figured I could just use the Helical Sweep feature & sweep a surface in the form of a straight line along my sketched profile, then I have 2 edges I can use for my helix curve.

 

Regards

 

John   

You can use relational sweep as shown in the attached file. 

John.Pryal
14-Alexandrite
(To:BHOoi)

Thanks for the reply, see my response to the first, I think the same applies. I have attached an image of my requirement & my solution.helix_to_profile.JPG

Hi, I tried to solve by adding another equation to the sweep. Is this something you have in mind?

John.Pryal
14-Alexandrite
(To:John.Pryal)

Thank you for your reply. This is the same as my approach, the image I posted earlier was done in Creo using Helical Sweep just as you show. The only disadvantage to this method is I end up with a redundant surface once i extract my helical curve/edge. In Catia, it appears you can create the helical curve without the surface, so you don't have to deal with hiding it somehow or merging it with other surfaces.

 

Regards

Seems like the only way to generate this in one feature would be if you can somehow define your profile curve in a simple mathematical way, so you could then calculate the three coordinates based upon the parametric "t" value. The math would be kind of horrendous, and changing the profile wouldn't be fun.

John.Pryal
14-Alexandrite
(To:John.Pryal)

Yes, you have it right. It is my belief that this can only be done the way you & I previously described, using the helical sweep feature to make a flat surface. Maybe this could be done by equation but it would not be worth the effort when it takes minutes to produce our way. I was just curious to see if anyone could come up with a way of doing this without having a redundant surface like Catia is able to do. 

 

Best Regards

True, the math would be a bit tricky. But it would be very cool. The chief trick is to somehow express the radius of the curve you want to follow as a function of "Z", the distance along the rotational axis. If we defined the variables:

numCoils = the number of "coils" we want along the central axis

pitch = the "Z" distance along the central axis between each coil, assumed constant.

R(z) = the radius of profile as a function of "z"

then

Z = pitch * t * numCoils

X = COS ( 360 * ( t * numCoils - floor ( t * numCoils ) ) ) * R(z)

Y = SIN ( 360 * ( t * numCoils - floor ( t * numCoils ) ) ) * R(z)

If R(z) were relatively simple and I had to complete this task, I would find it all too tempting to do the thing this way, just for the fun of it.

Why use the 'floor' function?

 

It might also be simpler to use cylindrical coordinates. Somewhere around here I did some pictures of making springs with reversals of direction using this method. It could also handle inversions (changing direction of winding)

 

One might also drive the radius with a graph, though the sketch constraint tools for graphs are minimal.

 I use the floor function to limit the angular inputs to the trigonometric functions to the range 0 - 360 degrees. I don't think they can handle angles like 440 degrees. If I'm wrong, those equations could be much simpler.

Can one define an equation driven curve using cylindrical coordinates? I've never seen this done.

Just for fun...

 

x = 25*cos(t*360)*sin(t*360)

y = 2*cos(t*360)*t*(1+exp(sin(t*360)))
z = 2*sin(t*360)*t*(1+exp(cos(t*360)))

 

Using t between 0 and 6.25.

Creo Cartesian ParametricCreo Cartesian Parametric

However, Creo is a solid modelling system, and very good at creating helical sweeps, following very complex profiles, which are easy to sketch.

I don't really see many applications requiring the trajectory (curve) without the solid geometry.

 

An interesting topic though.

Randy_S
4-Participant
(To:jhaston-3)

I use them in electrical routing all the time and the helix is a great way to make a coil of wire or neat tidy service loop.

My guess would be it's a built-in feature? This kind of shape looks a lot like the cooling/fuel lines in a rocket engine, or the inner case of a jet engine. Catia is (or was?) Boeing's little darling, so maybe that was why something like this is a standard feature?

Also, I see that use of "floor" is prohibited for equation driven curves, so bad on me.

John.Pryal
14-Alexandrite
(To:John.Pryal)

Show off Smiley Tongue

Hi, I used your method to create a datum curve by projecting the edge of the sweep surface onto the surface of the sweep. I've placed the sweep on a layer and hidden it (I don't see this as a significant drawback). Seems okay and accurately follows the profile. Only two features and relatively straightforward procedure.

Creo Helical Curve Following a User-defined ProfileCreo Helical Curve Following a User-defined Profile

I think Ken is dead right about the maths and taking the route using parametric equations. That would be difficult and time very consuming, requiring a different solution for each profile.

 

The other approach for equations may be a cylindrical equation with R (radius) being controlled by a graph.

Can we use evalgraph in equations?  ...and if not, why not 🙂

That's the difference between Creo and Catia... not to mention an exta digit in the price.

 

 

Announcements
NEW Creo+ Topics: Real-time Collaboration


Top Tags