Full Version: Wave Spring

From: bemfarmer [#1]
 18 Oct 2017

Here is an update to the old WaveSpring script from 2012:

Version 2, added a few variables.

This script creates a circular sinusoidal helix-like curve.
The user may Sweep the curve with a circle or rectangle to make a WaveSpring.
Here is a update to an old script from 2012:

WaveSpring2 script, added a few variables.


radius is the outer radius of the curve, in TopView.
A negative radius switches clockwiseness, and rotates the curve.

amplitude is the maximum zHeight of half of one sine wave.
There must be a sufficient number of numpoints.

numwaves is the number of sine waves per level.

coilspace is the zSpace between portions of the sine wave.
For a WaveSpring, the coilspace should be about half of the Amplitude.
For a closed, one level sine wave ring:
Set coilspace = 0, and numwaves = integer or integer + 0.5.

numcoils is the number of coils per level.

ellipsescale modifies the y radius, to make an elliptical, rather than circular, TopView.
An ellipsescale of -1.0 switches clockwiseness also, without rotation.

(Try a perp/perp line segment, and Sweep using a ring sinewave, and its negative, as two rails.)

The zHeight of the coil is approximately = coilspace * 2PI * numcoils,
but is also affected by the amplitude.(?).
The z height of a swept object, say rectange or circle, must also be added, to get the total zHeight.

Well, maybe I'll try to integrate it with CircularSineWave script...

- Brian



From: mkdm [#2]
 18 Oct 2017

Hi bemfarmer.

Thank you very much for this new welcome update!

And thanks a lot for instructions as well.

Have a nice day.


From: bemfarmer [#3]
 18 Oct 2017

Thank you Marco.


Reply to All

Back to thread list | Login

© 2018 Project Beehive Forum