I want to create a curve describing a multi-layer coil, similar to that shown in the picture:
This is a representation of several layers of cable on a winch drum, with the direction of spooling reversing at each layer change.
Working in cylindrical coordinates, each point on the curve has a radius, (r), an angle, (theta) and an axial position along the drum, (z). Thus, assuming the radius of the drum is r0, the diameter of the cable is d and the length of the drum is L, as the angle, theta, around the drum increases, so the z value increases by d each time theta increases by 360, until z=L, when r changes to r0+d and z starts to decrease. When z gets back to zero, r increases again by d and z starts to increase, and so on until the drum is filled or the end of the cable is reached.
As you can see, I have devised a way to create the curve, based on a series of points at discrete r, theta and z values, calculated using an Excel spreadsheet. The z value calculation uses an IF statement to determine whether it increases or decreases.
Ideally, I would like to use a single equation inside Creo/Pro/Engineer to define the curve, rather than importing points from Excel. Sadly, Pro/Engineer has a rather limited set of functions available for curves based on equations - you can't use IF, FOR, ABS, INT, to name but a few.
So, my question is this:
Is it mathematically possible to describe the shape shown using a single equation to produce r, theta and z values, but without using conditional statements, ABS or INT?
I think the answer is 'No', but I would like to be sure...
I thought the MathCad community would be more likely to know the answer than the Creo community, hence asking the question here, rather than in Creo.
you can't use IF, FOR, ABS, INT, to name but a few.
So I guess there is no MODulo function either and Creo will not evaluate boolean expressions to 0 or 1 as mathcad.
It's as if someone thought, 'How can I make this as difficult as possible to use? I know, I'll remove most of the really useful functions!'
As there would not be a Heaviside step function, too, I can't think of a way to describe the coil using just one continous function, too.