HELIX3D draws a helix that climbs as it turns, as an ordinary 3D polyline.
What SpiralPath does
Why, when AutoCAD has had a HELIX command since 2007 that asks for much the same numbers? Because HELIX makes a HELIX object — a spline underneath — and there are things you cannot usefully do with one. You cannot offset it, you cannot get at its vertices, and exploding it gives a spline rather than segments.
A polyline you can offset, trim, edit vertex by vertex, and hand to a machine as a toolpath. That is the whole reason to keep this.
How to use it
- Load the routine with
APPLOAD, or put it on your support file search path. - Type
HELIX3D. - Pick the start point and give the radius, the rise per turn and the number of turns.
- For a flat spiral, use
SPIRALin ShopShapes instead — it already draws one as a polyline.
How it works
The helix is generated point by point and written as a 3D polyline, starting where you told it to.
π comes from AutoLISP, not from a typed constant. Typing it by hand as 3.141596235 — where the real value is 3.141592653, so the fifth and sixth decimals are wrong — is enough that a spiral of any length drifts off where it should be and never quite closes. AutoLISP has pi built in.
The error handler is installed and the old one saved properly. A routine that finishes by setting the session error handler from a variable that was never given a value sets it to nil — and after running it once, every later error in any routine reports as a bare AutoCAD message with no cleanup at all.
Notes and limits
- The result is a real polyline, editable and offsettable, unlike a HELIX object.
- For a flat spiral use SPIRAL in ShopShapes — there is no sense having two.
- More segments means a smoother helix and a heavier object; pick to suit what it is for.
- One undo group covers the helix.
Download and details
| Name | SpiralPath — a rising helix as an ordinary 3D polyline |
| Download | SpiralPath.lsp — 6.2 KB, plain AutoLISP source. Downloads directly; no zip to unpack. |
| Type | AutoCAD AutoLISP routine |
| Command | HELIX3D |
| Requires | nothing beyond a CAD platform with AutoLISP. |
| Source size | 6.2 KB, 161 lines |
| Error handling | Yes — a *error* handler restores every system variable it changed, on cancel as well as on error. |
| Undo | The whole operation is wrapped in a single undo group, so one U reverses all of it. |
| Compatibility | AutoCAD (any release with AutoLISP), BricsCAD, ZWCAD, GstarCAD, ProgeCAD and other IntelliCAD-based platforms. AutoCAD LT needs a LISP enabler. No .NET, no ObjectARX, no installer. |
| Author | YZ, August 2026 |
| Licence | Free to use, supplied “as is” with no warranty. |
References
- SPIRALSTAIR LISP — a spiral stair built as 3D surfaces
- POLY3D LISP — lifting a flat polyline into 3D
- More free AutoLISP routines on this site
- Wisey’s Steel Shapes — free structural steel section drawing program