discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Helix with circular cross-section

MF
mike.fraser.1945+osc@gmail.com
Fri, Oct 25, 2024 11:35 AM

Morning folks,

Is there any way to create a helix with a circular cross-section?  I have tried linear_extrude with both a circle & various ovals as input.  I’ve tried various BOLS2 threading functions.  I can get the helix easily but not with a smooth circle cross-section.

Mike

Morning folks, Is there any way to create a helix with a circular cross-section? I have tried linear_extrude with both a circle & various ovals as input. I’ve tried various BOLS2 threading functions. I can get the helix easily but not with a smooth circle cross-section. Mike
AM
Adrian Mariano
Fri, Oct 25, 2024 11:56 AM

When you say you want a helix with a circular cross section, do you mean
measured in the usual way, normal to the helical path, or are you looking
at some other cross section?

What's wrong with

include<BOSL2/std.scad>
spiral_sweep(circle(r=2,$fn=32), h=20, r=10,turns=3);

On Fri, Oct 25, 2024 at 7:36 AM mike.fraser.1945+osc--- via Discuss <
discuss@lists.openscad.org> wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I have
tried linear_extrude with both a circle & various ovals as input. I’ve
tried various BOLS2 threading functions. I can get the helix easily but not
with a smooth circle cross-section.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

When you say you want a helix with a circular cross section, do you mean measured in the usual way, normal to the helical path, or are you looking at some other cross section? What's wrong with include<BOSL2/std.scad> spiral_sweep(circle(r=2,$fn=32), h=20, r=10,turns=3); On Fri, Oct 25, 2024 at 7:36 AM mike.fraser.1945+osc--- via Discuss < discuss@lists.openscad.org> wrote: > Morning folks, > > Is there any way to create a helix with a circular cross-section? I have > tried linear_extrude with both a circle & various ovals as input. I’ve > tried various BOLS2 threading functions. I can get the helix easily but not > with a smooth circle cross-section. > > Mike > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
RW
Rogier Wolff
Fri, Oct 25, 2024 12:06 PM

On Fri, Oct 25, 2024 at 11:35:59AM +0000, mike.fraser.1945+osc--- via Discuss wrote:

Is there any way to create a helix with a circular cross-section?  I
have tried linear_extrude with both a circle & various ovals as
input.  I’ve tried various BOLS2 threading functions.  I can get
the helix easily but not with a smooth circle cross-section.

Do you mean this?

r = 15;

d = 4;
l = 20;
nr = 4.5;
nsteps = 300;

$fs = .1;
$fa = 2;
module mys (n)
{
rotate (n * nr * 360/nsteps) translate ([d,0,n*l/nsteps]) sphere (d=d);
}

for (i=[0:1:nsteps-1])
hull () {mys (i);mys(i+1);}

--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 **
**    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK: 27239233    **
f equals m times a. When your f is steady, and your m is going down
your a** is going up.  -- Chris Hadfield about flying up the space shuttle.
**  'a' for accelleration.

On Fri, Oct 25, 2024 at 11:35:59AM +0000, mike.fraser.1945+osc--- via Discuss wrote: > Is there any way to create a helix with a circular cross-section? I > have tried linear_extrude with both a circle & various ovals as > input. I’ve tried various BOLS2 threading functions. I can get > the helix easily but not with a smooth circle cross-section. Do you mean this? r = 15; d = 4; l = 20; nr = 4.5; nsteps = 300; $fs = .1; $fa = 2; module mys (n) { rotate (n * nr * 360/nsteps) translate ([d,0,n*l/nsteps]) sphere (d=d); } for (i=[0:1:nsteps-1]) hull () {mys (i);mys(i+1);} -- ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 ** ** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 ** f equals m times a. When your f is steady, and your m is going down your a** is going up. -- Chris Hadfield about flying up the space shuttle. ** 'a' for accelleration.
KR
Katie Rust
Fri, Oct 25, 2024 2:37 PM

I have created a module called helix_extrude as part of my suite of
utility functions and modules:
https://gitlab.com/ktpanda/openscad-common

use <ktpanda/funcs.scad>
use <ktpanda/shapes.scad>

$fn = 80;
circle_rad = 3;
helix_rad = 20;
helix_rise = 8;

helix_extrude(points=circlepts(circle_rad), ofs=[helix_rad, 0],
cofs=[0, helix_rise], angle=360*10, convex=true);

points is a list of 2D points like you would pass to polygon
ofs is a base offset to apply to points
cofs is how much ofs should increase per turn.
angle defines the ending angle and encodes how many turns the helix has
convex is a hint that points defines a convex polygon

The ends will be circular, but the points will be sheared upward and
not normal to the helix. A circular cross section might require some
tweaking.

On Fri, Oct 25, 2024 at 7:07 AM Rogier Wolff via Discuss
discuss@lists.openscad.org wrote:

On Fri, Oct 25, 2024 at 11:35:59AM +0000, mike.fraser.1945+osc--- via Discuss wrote:

Is there any way to create a helix with a circular cross-section?  I
have tried linear_extrude with both a circle & various ovals as
input.  I’ve tried various BOLS2 threading functions.  I can get
the helix easily but not with a smooth circle cross-section.

Do you mean this?

r = 15;

d = 4;
l = 20;
nr = 4.5;
nsteps = 300;

$fs = .1;
$fa = 2;
module mys (n)
{
rotate (n * nr * 360/nsteps) translate ([d,0,n*l/nsteps]) sphere (d=d);
}

for (i=[0:1:nsteps-1])
hull () {mys (i);mys(i+1);}

--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 **
**    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK: 27239233    **
f equals m times a. When your f is steady, and your m is going down
your a** is going up.  -- Chris Hadfield about flying up the space shuttle.
**  'a' for accelleration.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I have created a module called `helix_extrude` as part of my suite of utility functions and modules: https://gitlab.com/ktpanda/openscad-common use <ktpanda/funcs.scad> use <ktpanda/shapes.scad> $fn = 80; circle_rad = 3; helix_rad = 20; helix_rise = 8; helix_extrude(points=circlepts(circle_rad), ofs=[helix_rad, 0], cofs=[0, helix_rise], angle=360*10, convex=true); `points` is a list of 2D points like you would pass to `polygon` `ofs` is a base offset to apply to `points` `cofs` is how much `ofs` should increase per turn. `angle` defines the ending angle and encodes how many turns the helix has `convex` is a hint that `points` defines a convex polygon The ends will be circular, but the points will be sheared upward and not normal to the helix. A circular cross section might require some tweaking. On Fri, Oct 25, 2024 at 7:07 AM Rogier Wolff via Discuss <discuss@lists.openscad.org> wrote: > > On Fri, Oct 25, 2024 at 11:35:59AM +0000, mike.fraser.1945+osc--- via Discuss wrote: > > Is there any way to create a helix with a circular cross-section? I > > have tried linear_extrude with both a circle & various ovals as > > input. I’ve tried various BOLS2 threading functions. I can get > > the helix easily but not with a smooth circle cross-section. > > Do you mean this? > > r = 15; > > d = 4; > l = 20; > nr = 4.5; > nsteps = 300; > > $fs = .1; > $fa = 2; > module mys (n) > { > rotate (n * nr * 360/nsteps) translate ([d,0,n*l/nsteps]) sphere (d=d); > } > > for (i=[0:1:nsteps-1]) > hull () {mys (i);mys(i+1);} > > > > -- > ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** +31-15-2049110 ** > ** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 ** > f equals m times a. When your f is steady, and your m is going down > your a** is going up. -- Chris Hadfield about flying up the space shuttle. > ** 'a' for accelleration. > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org
GS
Guenther Sohler
Fri, Oct 25, 2024 2:51 PM

you get a helix by simply wrapping a wire around a cylinder ...

https://imgur.com/a/hmYALpM

🤣🤣

On Fri, Oct 25, 2024 at 4:46 PM Katie Rust via Discuss <
discuss@lists.openscad.org> wrote:

I have created a module called helix_extrude as part of my suite of
utility functions and modules:
https://gitlab.com/ktpanda/openscad-common

use <ktpanda/funcs.scad>
use <ktpanda/shapes.scad>

$fn = 80;
circle_rad = 3;
helix_rad = 20;
helix_rise = 8;

helix_extrude(points=circlepts(circle_rad), ofs=[helix_rad, 0],
cofs=[0, helix_rise], angle=360*10, convex=true);

points is a list of 2D points like you would pass to polygon
ofs is a base offset to apply to points
cofs is how much ofs should increase per turn.
angle defines the ending angle and encodes how many turns the helix has
convex is a hint that points defines a convex polygon

The ends will be circular, but the points will be sheared upward and
not normal to the helix. A circular cross section might require some
tweaking.

On Fri, Oct 25, 2024 at 7:07 AM Rogier Wolff via Discuss
discuss@lists.openscad.org wrote:

On Fri, Oct 25, 2024 at 11:35:59AM +0000, mike.fraser.1945+osc--- via

Discuss wrote:

Is there any way to create a helix with a circular cross-section?  I
have tried linear_extrude with both a circle & various ovals as
input.  I’ve tried various BOLS2 threading functions.  I can get
the helix easily but not with a smooth circle cross-section.

Do you mean this?

r = 15;

d = 4;
l = 20;
nr = 4.5;
nsteps = 300;

$fs = .1;
$fa = 2;
module mys (n)
{
rotate (n * nr * 360/nsteps) translate ([d,0,n*l/nsteps]) sphere (d=d);
}

for (i=[0:1:nsteps-1])
hull () {mys (i);mys(i+1);}

--
** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ **

+31-15-2049110 **

**    Delftechpark 11 2628 XJ  Delft, The Netherlands.  KVK: 27239233

**

f equals m times a. When your f is steady, and your m is going down
your a** is going up.  -- Chris Hadfield about flying up the space

shuttle.

**  'a' for accelleration.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

you get a helix by simply wrapping a wire around a cylinder ... https://imgur.com/a/hmYALpM 🤣🤣 On Fri, Oct 25, 2024 at 4:46 PM Katie Rust via Discuss < discuss@lists.openscad.org> wrote: > I have created a module called `helix_extrude` as part of my suite of > utility functions and modules: > https://gitlab.com/ktpanda/openscad-common > > use <ktpanda/funcs.scad> > use <ktpanda/shapes.scad> > > $fn = 80; > circle_rad = 3; > helix_rad = 20; > helix_rise = 8; > > helix_extrude(points=circlepts(circle_rad), ofs=[helix_rad, 0], > cofs=[0, helix_rise], angle=360*10, convex=true); > > `points` is a list of 2D points like you would pass to `polygon` > `ofs` is a base offset to apply to `points` > `cofs` is how much `ofs` should increase per turn. > `angle` defines the ending angle and encodes how many turns the helix has > `convex` is a hint that `points` defines a convex polygon > > The ends will be circular, but the points will be sheared upward and > not normal to the helix. A circular cross section might require some > tweaking. > > On Fri, Oct 25, 2024 at 7:07 AM Rogier Wolff via Discuss > <discuss@lists.openscad.org> wrote: > > > > On Fri, Oct 25, 2024 at 11:35:59AM +0000, mike.fraser.1945+osc--- via > Discuss wrote: > > > Is there any way to create a helix with a circular cross-section? I > > > have tried linear_extrude with both a circle & various ovals as > > > input. I’ve tried various BOLS2 threading functions. I can get > > > the helix easily but not with a smooth circle cross-section. > > > > Do you mean this? > > > > r = 15; > > > > d = 4; > > l = 20; > > nr = 4.5; > > nsteps = 300; > > > > $fs = .1; > > $fa = 2; > > module mys (n) > > { > > rotate (n * nr * 360/nsteps) translate ([d,0,n*l/nsteps]) sphere (d=d); > > } > > > > for (i=[0:1:nsteps-1]) > > hull () {mys (i);mys(i+1);} > > > > > > > > -- > > ** R.E.Wolff@BitWizard.nl ** https://www.BitWizard.nl/ ** > +31-15-2049110 ** > > ** Delftechpark 11 2628 XJ Delft, The Netherlands. KVK: 27239233 > ** > > f equals m times a. When your f is steady, and your m is going down > > your a** is going up. -- Chris Hadfield about flying up the space > shuttle. > > ** 'a' for accelleration. > > _______________________________________________ > > OpenSCAD mailing list > > To unsubscribe send an email to discuss-leave@lists.openscad.org > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
GH
gene heskett
Fri, Oct 25, 2024 4:43 PM

On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I have
tried linear_extrude with both a circle & various ovals as input. I’ve
tried various BOLS2 threading functions. I can get the helix easily but
not with a smooth circle cross-section.

I am doing this in both linuxcnc and in openscad, by rendering each
"slice" of a buttress thread at a slight tilt angle, thereby blending
the resultant surface areas effectively at the thread angle. Actually
its rendered once, then rotated into place. Speeds rendering when the
spiral is 20 turns of the screw long in 2 start and the slice is a half
a degree thick. More than one way to skin that cat. ;o)>
Gene.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis
On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote: > Morning folks, > > Is there any way to create a helix with a circular cross-section? I have > tried linear_extrude with both a circle & various ovals as input. I’ve > tried various BOLS2 threading functions. I can get the helix easily but > not with a smooth circle cross-section. > I am doing this in both linuxcnc and in openscad, by rendering each "slice" of a buttress thread at a slight tilt angle, thereby blending the resultant surface areas effectively at the thread angle. Actually its rendered once, then rotated into place. Speeds rendering when the spiral is 20 turns of the screw long in 2 start and the slice is a half a degree thick. More than one way to skin that cat. ;o)> Gene. > Mike > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org Cheers, Gene Heskett, CET. -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author, 1940) If we desire respect for the law, we must first make the law respectable. - Louis D. Brandeis
FH
Father Horton
Fri, Oct 25, 2024 5:10 PM

Let d be the diameter of the circle and alpha be the angle of the helix.
Then create a circle of diameter d, scale it by [1, 1/cos(90-alpha)], and
linear_extrude that. I think that’s what you want.

On Fri, Oct 25, 2024 at 11:43 AM gene heskett via Discuss <
discuss@lists.openscad.org> wrote:

On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I have
tried linear_extrude with both a circle & various ovals as input. I’ve
tried various BOLS2 threading functions. I can get the helix easily but
not with a smooth circle cross-section.

I am doing this in both linuxcnc and in openscad, by rendering each
"slice" of a buttress thread at a slight tilt angle, thereby blending
the resultant surface areas effectively at the thread angle. Actually
its rendered once, then rotated into place. Speeds rendering when the
spiral is 20 turns of the screw long in 2 start and the slice is a half
a degree thick. More than one way to skin that cat. ;o)>
Gene.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis

OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Let d be the diameter of the circle and alpha be the angle of the helix. Then create a circle of diameter d, scale it by [1, 1/cos(90-alpha)], and linear_extrude that. I think that’s what you want. On Fri, Oct 25, 2024 at 11:43 AM gene heskett via Discuss < discuss@lists.openscad.org> wrote: > On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote: > > Morning folks, > > > > Is there any way to create a helix with a circular cross-section? I have > > tried linear_extrude with both a circle & various ovals as input. I’ve > > tried various BOLS2 threading functions. I can get the helix easily but > > not with a smooth circle cross-section. > > > I am doing this in both linuxcnc and in openscad, by rendering each > "slice" of a buttress thread at a slight tilt angle, thereby blending > the resultant surface areas effectively at the thread angle. Actually > its rendered once, then rotated into place. Speeds rendering when the > spiral is 20 turns of the screw long in 2 start and the slice is a half > a degree thick. More than one way to skin that cat. ;o)> > Gene. > > Mike > > > > > > _______________________________________________ > > OpenSCAD mailing list > > To unsubscribe send an email to discuss-leave@lists.openscad.org > > Cheers, Gene Heskett, CET. > -- > "There are four boxes to be used in defense of liberty: > soap, ballot, jury, and ammo. Please use in that order." > -Ed Howdershelt (Author, 1940) > If we desire respect for the law, we must first make the law respectable. > - Louis D. Brandeis > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
NH
nop head
Fri, Oct 25, 2024 5:28 PM

I don't think that is quite right because if you slice a helix you don't
get an ellipse. It is an ellipse bent around the circle of the spiral.

On Fri, 25 Oct 2024 at 18:10, Father Horton via Discuss <
discuss@lists.openscad.org> wrote:

Let d be the diameter of the circle and alpha be the angle of the helix.
Then create a circle of diameter d, scale it by [1, 1/cos(90-alpha)], and
linear_extrude that. I think that’s what you want.

On Fri, Oct 25, 2024 at 11:43 AM gene heskett via Discuss <
discuss@lists.openscad.org> wrote:

On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I

have

tried linear_extrude with both a circle & various ovals as input. I’ve
tried various BOLS2 threading functions. I can get the helix easily but
not with a smooth circle cross-section.

I am doing this in both linuxcnc and in openscad, by rendering each
"slice" of a buttress thread at a slight tilt angle, thereby blending
the resultant surface areas effectively at the thread angle. Actually
its rendered once, then rotated into place. Speeds rendering when the
spiral is 20 turns of the screw long in 2 start and the slice is a half
a degree thick. More than one way to skin that cat. ;o)>
Gene.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis

OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I don't think that is quite right because if you slice a helix you don't get an ellipse. It is an ellipse bent around the circle of the spiral. On Fri, 25 Oct 2024 at 18:10, Father Horton via Discuss < discuss@lists.openscad.org> wrote: > Let d be the diameter of the circle and alpha be the angle of the helix. > Then create a circle of diameter d, scale it by [1, 1/cos(90-alpha)], and > linear_extrude that. I think that’s what you want. > > On Fri, Oct 25, 2024 at 11:43 AM gene heskett via Discuss < > discuss@lists.openscad.org> wrote: > >> On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote: >> > Morning folks, >> > >> > Is there any way to create a helix with a circular cross-section? I >> have >> > tried linear_extrude with both a circle & various ovals as input. I’ve >> > tried various BOLS2 threading functions. I can get the helix easily but >> > not with a smooth circle cross-section. >> > >> I am doing this in both linuxcnc and in openscad, by rendering each >> "slice" of a buttress thread at a slight tilt angle, thereby blending >> the resultant surface areas effectively at the thread angle. Actually >> its rendered once, then rotated into place. Speeds rendering when the >> spiral is 20 turns of the screw long in 2 start and the slice is a half >> a degree thick. More than one way to skin that cat. ;o)> >> Gene. >> > Mike >> > >> > >> > _______________________________________________ >> > OpenSCAD mailing list >> > To unsubscribe send an email to discuss-leave@lists.openscad.org >> >> Cheers, Gene Heskett, CET. >> -- >> "There are four boxes to be used in defense of liberty: >> soap, ballot, jury, and ammo. Please use in that order." >> -Ed Howdershelt (Author, 1940) >> If we desire respect for the law, we must first make the law respectable. >> - Louis D. Brandeis >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
FH
Father Horton
Fri, Oct 25, 2024 6:12 PM

I think what he wants is what you’d get if you wrapped a wire with a
circular cross section around a cylinder. And I think that’s what this will
produce.

On Fri, Oct 25, 2024 at 12:28 PM nop head via Discuss <
discuss@lists.openscad.org> wrote:

I don't think that is quite right because if you slice a helix you don't
get an ellipse. It is an ellipse bent around the circle of the spiral.

On Fri, 25 Oct 2024 at 18:10, Father Horton via Discuss <
discuss@lists.openscad.org> wrote:

Let d be the diameter of the circle and alpha be the angle of the helix.
Then create a circle of diameter d, scale it by [1, 1/cos(90-alpha)], and
linear_extrude that. I think that’s what you want.

On Fri, Oct 25, 2024 at 11:43 AM gene heskett via Discuss <
discuss@lists.openscad.org> wrote:

On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I

have

tried linear_extrude with both a circle & various ovals as input. I’ve
tried various BOLS2 threading functions. I can get the helix easily

but

not with a smooth circle cross-section.

I am doing this in both linuxcnc and in openscad, by rendering each
"slice" of a buttress thread at a slight tilt angle, thereby blending
the resultant surface areas effectively at the thread angle. Actually
its rendered once, then rotated into place. Speeds rendering when the
spiral is 20 turns of the screw long in 2 start and the slice is a half
a degree thick. More than one way to skin that cat. ;o)>
Gene.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis

OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I think what he wants is what you’d get if you wrapped a wire with a circular cross section around a cylinder. And I think that’s what this will produce. On Fri, Oct 25, 2024 at 12:28 PM nop head via Discuss < discuss@lists.openscad.org> wrote: > I don't think that is quite right because if you slice a helix you don't > get an ellipse. It is an ellipse bent around the circle of the spiral. > > On Fri, 25 Oct 2024 at 18:10, Father Horton via Discuss < > discuss@lists.openscad.org> wrote: > >> Let d be the diameter of the circle and alpha be the angle of the helix. >> Then create a circle of diameter d, scale it by [1, 1/cos(90-alpha)], and >> linear_extrude that. I think that’s what you want. >> >> On Fri, Oct 25, 2024 at 11:43 AM gene heskett via Discuss < >> discuss@lists.openscad.org> wrote: >> >>> On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote: >>> > Morning folks, >>> > >>> > Is there any way to create a helix with a circular cross-section? I >>> have >>> > tried linear_extrude with both a circle & various ovals as input. I’ve >>> > tried various BOLS2 threading functions. I can get the helix easily >>> but >>> > not with a smooth circle cross-section. >>> > >>> I am doing this in both linuxcnc and in openscad, by rendering each >>> "slice" of a buttress thread at a slight tilt angle, thereby blending >>> the resultant surface areas effectively at the thread angle. Actually >>> its rendered once, then rotated into place. Speeds rendering when the >>> spiral is 20 turns of the screw long in 2 start and the slice is a half >>> a degree thick. More than one way to skin that cat. ;o)> >>> Gene. >>> > Mike >>> > >>> > >>> > _______________________________________________ >>> > OpenSCAD mailing list >>> > To unsubscribe send an email to discuss-leave@lists.openscad.org >>> >>> Cheers, Gene Heskett, CET. >>> -- >>> "There are four boxes to be used in defense of liberty: >>> soap, ballot, jury, and ammo. Please use in that order." >>> -Ed Howdershelt (Author, 1940) >>> If we desire respect for the law, we must first make the law respectable. >>> - Louis D. Brandeis >>> _______________________________________________ >>> OpenSCAD mailing list >>> To unsubscribe send an email to discuss-leave@lists.openscad.org >>> >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
NH
nop head
Fri, Oct 25, 2024 6:43 PM

If you are using sweep the profile is just a circle but if you are linear
extruding with a twist then the profile is what you would get if you slice
a spiral spring horizontally. That isn't an ellipse. An ellipse is what you
would get if you sliced an inclined cylinder but a helix bends so it's
cross section is an ellipse bent around the helix diameter.

On Fri, 25 Oct 2024, 19:12 Father Horton via Discuss, <
discuss@lists.openscad.org> wrote:

I think what he wants is what you’d get if you wrapped a wire with a
circular cross section around a cylinder. And I think that’s what this will
produce.

On Fri, Oct 25, 2024 at 12:28 PM nop head via Discuss <
discuss@lists.openscad.org> wrote:

I don't think that is quite right because if you slice a helix you don't
get an ellipse. It is an ellipse bent around the circle of the spiral.

On Fri, 25 Oct 2024 at 18:10, Father Horton via Discuss <
discuss@lists.openscad.org> wrote:

Let d be the diameter of the circle and alpha be the angle of the helix.
Then create a circle of diameter d, scale it by [1, 1/cos(90-alpha)], and
linear_extrude that. I think that’s what you want.

On Fri, Oct 25, 2024 at 11:43 AM gene heskett via Discuss <
discuss@lists.openscad.org> wrote:

On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I

have

tried linear_extrude with both a circle & various ovals as input.

I’ve

tried various BOLS2 threading functions. I can get the helix easily

but

not with a smooth circle cross-section.

I am doing this in both linuxcnc and in openscad, by rendering each
"slice" of a buttress thread at a slight tilt angle, thereby blending
the resultant surface areas effectively at the thread angle. Actually
its rendered once, then rotated into place. Speeds rendering when the
spiral is 20 turns of the screw long in 2 start and the slice is a half
a degree thick. More than one way to skin that cat. ;o)>
Gene.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law
respectable.

  • Louis D. Brandeis

OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

If you are using sweep the profile is just a circle but if you are linear extruding with a twist then the profile is what you would get if you slice a spiral spring horizontally. That isn't an ellipse. An ellipse is what you would get if you sliced an inclined cylinder but a helix bends so it's cross section is an ellipse bent around the helix diameter. On Fri, 25 Oct 2024, 19:12 Father Horton via Discuss, < discuss@lists.openscad.org> wrote: > I think what he wants is what you’d get if you wrapped a wire with a > circular cross section around a cylinder. And I think that’s what this will > produce. > > On Fri, Oct 25, 2024 at 12:28 PM nop head via Discuss < > discuss@lists.openscad.org> wrote: > >> I don't think that is quite right because if you slice a helix you don't >> get an ellipse. It is an ellipse bent around the circle of the spiral. >> >> On Fri, 25 Oct 2024 at 18:10, Father Horton via Discuss < >> discuss@lists.openscad.org> wrote: >> >>> Let d be the diameter of the circle and alpha be the angle of the helix. >>> Then create a circle of diameter d, scale it by [1, 1/cos(90-alpha)], and >>> linear_extrude that. I think that’s what you want. >>> >>> On Fri, Oct 25, 2024 at 11:43 AM gene heskett via Discuss < >>> discuss@lists.openscad.org> wrote: >>> >>>> On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote: >>>> > Morning folks, >>>> > >>>> > Is there any way to create a helix with a circular cross-section? I >>>> have >>>> > tried linear_extrude with both a circle & various ovals as input. >>>> I’ve >>>> > tried various BOLS2 threading functions. I can get the helix easily >>>> but >>>> > not with a smooth circle cross-section. >>>> > >>>> I am doing this in both linuxcnc and in openscad, by rendering each >>>> "slice" of a buttress thread at a slight tilt angle, thereby blending >>>> the resultant surface areas effectively at the thread angle. Actually >>>> its rendered once, then rotated into place. Speeds rendering when the >>>> spiral is 20 turns of the screw long in 2 start and the slice is a half >>>> a degree thick. More than one way to skin that cat. ;o)> >>>> Gene. >>>> > Mike >>>> > >>>> > >>>> > _______________________________________________ >>>> > OpenSCAD mailing list >>>> > To unsubscribe send an email to discuss-leave@lists.openscad.org >>>> >>>> Cheers, Gene Heskett, CET. >>>> -- >>>> "There are four boxes to be used in defense of liberty: >>>> soap, ballot, jury, and ammo. Please use in that order." >>>> -Ed Howdershelt (Author, 1940) >>>> If we desire respect for the law, we must first make the law >>>> respectable. >>>> - Louis D. Brandeis >>>> _______________________________________________ >>>> OpenSCAD mailing list >>>> To unsubscribe send an email to discuss-leave@lists.openscad.org >>>> >>> _______________________________________________ >>> OpenSCAD mailing list >>> To unsubscribe send an email to discuss-leave@lists.openscad.org >>> >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
AM
Adrian Mariano
Fri, Oct 25, 2024 6:54 PM

Jordan posted a detailed description of the banana shaped cross section you
need to make a helix with linear extrude and twist. Definitely not a circle
or an ellipse.

On Fri, Oct 25, 2024 at 14:44 nop head via Discuss <
discuss@lists.openscad.org> wrote:

If you are using sweep the profile is just a circle but if you are linear
extruding with a twist then the profile is what you would get if you slice
a spiral spring horizontally. That isn't an ellipse. An ellipse is what you
would get if you sliced an inclined cylinder but a helix bends so it's
cross section is an ellipse bent around the helix diameter.

On Fri, 25 Oct 2024, 19:12 Father Horton via Discuss, <
discuss@lists.openscad.org> wrote:

I think what he wants is what you’d get if you wrapped a wire with a
circular cross section around a cylinder. And I think that’s what this will
produce.

On Fri, Oct 25, 2024 at 12:28 PM nop head via Discuss <
discuss@lists.openscad.org> wrote:

I don't think that is quite right because if you slice a helix you don't
get an ellipse. It is an ellipse bent around the circle of the spiral.

On Fri, 25 Oct 2024 at 18:10, Father Horton via Discuss <
discuss@lists.openscad.org> wrote:

Let d be the diameter of the circle and alpha be the angle of the
helix. Then create a circle of diameter d, scale it by [1,
1/cos(90-alpha)], and linear_extrude that. I think that’s what you want.

On Fri, Oct 25, 2024 at 11:43 AM gene heskett via Discuss <
discuss@lists.openscad.org> wrote:

On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I

have

tried linear_extrude with both a circle & various ovals as input.

I’ve

tried various BOLS2 threading functions. I can get the helix easily

but

not with a smooth circle cross-section.

I am doing this in both linuxcnc and in openscad, by rendering each
"slice" of a buttress thread at a slight tilt angle, thereby blending
the resultant surface areas effectively at the thread angle. Actually
its rendered once, then rotated into place. Speeds rendering when the
spiral is 20 turns of the screw long in 2 start and the slice is a
half
a degree thick. More than one way to skin that cat. ;o)>
Gene.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law
respectable.

  • Louis D. Brandeis

OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Jordan posted a detailed description of the banana shaped cross section you need to make a helix with linear extrude and twist. Definitely not a circle or an ellipse. On Fri, Oct 25, 2024 at 14:44 nop head via Discuss < discuss@lists.openscad.org> wrote: > If you are using sweep the profile is just a circle but if you are linear > extruding with a twist then the profile is what you would get if you slice > a spiral spring horizontally. That isn't an ellipse. An ellipse is what you > would get if you sliced an inclined cylinder but a helix bends so it's > cross section is an ellipse bent around the helix diameter. > > On Fri, 25 Oct 2024, 19:12 Father Horton via Discuss, < > discuss@lists.openscad.org> wrote: > >> I think what he wants is what you’d get if you wrapped a wire with a >> circular cross section around a cylinder. And I think that’s what this will >> produce. >> >> On Fri, Oct 25, 2024 at 12:28 PM nop head via Discuss < >> discuss@lists.openscad.org> wrote: >> >>> I don't think that is quite right because if you slice a helix you don't >>> get an ellipse. It is an ellipse bent around the circle of the spiral. >>> >>> On Fri, 25 Oct 2024 at 18:10, Father Horton via Discuss < >>> discuss@lists.openscad.org> wrote: >>> >>>> Let d be the diameter of the circle and alpha be the angle of the >>>> helix. Then create a circle of diameter d, scale it by [1, >>>> 1/cos(90-alpha)], and linear_extrude that. I think that’s what you want. >>>> >>>> On Fri, Oct 25, 2024 at 11:43 AM gene heskett via Discuss < >>>> discuss@lists.openscad.org> wrote: >>>> >>>>> On 10/25/24 07:36, mike.fraser.1945+osc--- via Discuss wrote: >>>>> > Morning folks, >>>>> > >>>>> > Is there any way to create a helix with a circular cross-section? I >>>>> have >>>>> > tried linear_extrude with both a circle & various ovals as input. >>>>> I’ve >>>>> > tried various BOLS2 threading functions. I can get the helix easily >>>>> but >>>>> > not with a smooth circle cross-section. >>>>> > >>>>> I am doing this in both linuxcnc and in openscad, by rendering each >>>>> "slice" of a buttress thread at a slight tilt angle, thereby blending >>>>> the resultant surface areas effectively at the thread angle. Actually >>>>> its rendered once, then rotated into place. Speeds rendering when the >>>>> spiral is 20 turns of the screw long in 2 start and the slice is a >>>>> half >>>>> a degree thick. More than one way to skin that cat. ;o)> >>>>> Gene. >>>>> > Mike >>>>> > >>>>> > >>>>> > _______________________________________________ >>>>> > OpenSCAD mailing list >>>>> > To unsubscribe send an email to discuss-leave@lists.openscad.org >>>>> >>>>> Cheers, Gene Heskett, CET. >>>>> -- >>>>> "There are four boxes to be used in defense of liberty: >>>>> soap, ballot, jury, and ammo. Please use in that order." >>>>> -Ed Howdershelt (Author, 1940) >>>>> If we desire respect for the law, we must first make the law >>>>> respectable. >>>>> - Louis D. Brandeis >>>>> _______________________________________________ >>>>> OpenSCAD mailing list >>>>> To unsubscribe send an email to discuss-leave@lists.openscad.org >>>>> >>>> _______________________________________________ >>>> OpenSCAD mailing list >>>> To unsubscribe send an email to discuss-leave@lists.openscad.org >>>> >>> _______________________________________________ >>> OpenSCAD mailing list >>> To unsubscribe send an email to discuss-leave@lists.openscad.org >>> >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
JB
Jordan Brown
Fri, Oct 25, 2024 7:19 PM

On 10/25/2024 11:54 AM, Adrian Mariano via Discuss wrote:

Jordan posted a detailed description of the banana shaped cross
section you need to make a helix with linear extrude and twist.
Definitely not a circle or an ellipse.

https://lists.openscad.org/empathy/thread/DC2WDIIZS57SIDWVAVKDN3NEN4MOZOYM

Hans did the same thing much earlier in a Thingiverse post.

Attached image

On 10/25/2024 11:54 AM, Adrian Mariano via Discuss wrote: > Jordan posted a detailed description of the banana shaped cross > section you need to make a helix with linear extrude and twist. > Definitely not a circle or an ellipse. https://lists.openscad.org/empathy/thread/DC2WDIIZS57SIDWVAVKDN3NEN4MOZOYM Hans did the same thing much earlier in a Thingiverse post. Attached image
MK
Marko Kleine Berkenbusch
Fri, Oct 25, 2024 7:26 PM

I realize I am late to the party, but here is what I sometimes do when I
need to create some sort of helical feature. Any convex 2D geometry (in
this case a circle) can be passed as a child to the helix module and it
stitches together a number of thin slices of the profile via calls to
hull():

// extrude a helix with radius 'Radius', N revolutions, pitch
module helix (Radius, N, pitch, fa=10, eps=1e-3) {
for (i=[0:N360/fa-1]) {
hull() {
rotate([0, 0, i
fa])
translate([Radius, 0, pitchifa/360])
rotate([90+180*(pitch/(23.14Radius))/3.14, 0, 0])
linear_extrude(height=eps, center=true) children();
rotate([0, 0, (i+1)fa])
translate([Radius, 0, pitch
(i+1)fa/360])
rotate([90+180
(pitch/(23.14Radius))/3.14, 0, 0])
linear_extrude(height=eps, center=true)
children();
}
}
}

helix(Radius=4, N=4, pitch=3, fa=5) circle(r=1, $fn=30);

On Fri, Oct 25, 2024 at 3:20 PM Jordan Brown via Discuss <
discuss@lists.openscad.org> wrote:

On 10/25/2024 11:54 AM, Adrian Mariano via Discuss wrote:

Jordan posted a detailed description of the banana shaped cross section
you need to make a helix with linear extrude and twist. Definitely not a
circle or an ellipse.

https://lists.openscad.org/empathy/thread/DC2WDIIZS57SIDWVAVKDN3NEN4MOZOYM

Hans did the same thing much earlier in a Thingiverse post.

[image: Attached image]


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I realize I am late to the party, but here is what I sometimes do when I need to create some sort of helical feature. Any convex 2D geometry (in this case a circle) can be passed as a child to the helix module and it stitches together a number of thin slices of the profile via calls to hull(): // extrude a helix with radius 'Radius', N revolutions, pitch module helix (Radius, N, pitch, fa=10, eps=1e-3) { for (i=[0:N*360/fa-1]) { hull() { rotate([0, 0, i*fa]) translate([Radius, 0, pitch*i*fa/360]) rotate([90+180*(pitch/(2*3.14*Radius))/3.14, 0, 0]) linear_extrude(height=eps, center=true) children(); rotate([0, 0, (i+1)*fa]) translate([Radius, 0, pitch*(i+1)*fa/360]) rotate([90+180*(pitch/(2*3.14*Radius))/3.14, 0, 0]) linear_extrude(height=eps, center=true) children(); } } } helix(Radius=4, N=4, pitch=3, fa=5) circle(r=1, $fn=30); On Fri, Oct 25, 2024 at 3:20 PM Jordan Brown via Discuss < discuss@lists.openscad.org> wrote: > On 10/25/2024 11:54 AM, Adrian Mariano via Discuss wrote: > > Jordan posted a detailed description of the banana shaped cross section > you need to make a helix with linear extrude and twist. Definitely not a > circle or an ellipse. > > > https://lists.openscad.org/empathy/thread/DC2WDIIZS57SIDWVAVKDN3NEN4MOZOYM > > Hans did the same thing much earlier in a Thingiverse post. > > [image: Attached image] > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
RW
Raymond West
Fri, Oct 25, 2024 8:35 PM

On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I
have tried linear_extrude with both a circle & various ovals as input.
I’ve tried various BOLS2 threading functions. I can get the helix
easily but not with a smooth circle cross-section.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

see my post of the 14th (and 19th). Just use a circular profile. Or use
cadstudio.

On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote: > > Morning folks, > > Is there any way to create a helix with a circular cross-section? I > have tried linear_extrude with both a circle & various ovals as input. > I’ve tried various BOLS2 threading functions. I can get the helix > easily but not with a smooth circle cross-section. > > Mike > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org see my post of the 14th (and 19th). Just use a circular profile. Or use cadstudio.
RW
Raymond West
Fri, Oct 25, 2024 9:39 PM

cadstudio = cadview...

On 25/10/2024 21:35, Raymond West via Discuss wrote:

On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I
have tried linear_extrude with both a circle & various ovals as
input. I’ve tried various BOLS2 threading functions. I can get the
helix easily but not with a smooth circle cross-section.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org
see my post of the 14th (and 19th). Just use a circular profile. Or
use cadstudio.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

cadstudio = cadview... On 25/10/2024 21:35, Raymond West via Discuss wrote: > > On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote: >> >> Morning folks, >> >> Is there any way to create a helix with a circular cross-section? I >> have tried linear_extrude with both a circle & various ovals as >> input. I’ve tried various BOLS2 threading functions. I can get the >> helix easily but not with a smooth circle cross-section. >> >> Mike >> >> >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org > see my post of the 14th (and 19th). Just use a circular profile. Or > use cadstudio. > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org
NH
nop head
Fri, Oct 25, 2024 9:48 PM

These are all made by sweeping a circle on a helical path. Much easier than
using linear_extrude with a  twist.

[image: image.png]

On Fri, 25 Oct 2024 at 22:40, Raymond West via Discuss <
discuss@lists.openscad.org> wrote:

cadstudio = cadview...

On 25/10/2024 21:35, Raymond West via Discuss wrote:

On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I
have tried linear_extrude with both a circle & various ovals as
input. I’ve tried various BOLS2 threading functions. I can get the
helix easily but not with a smooth circle cross-section.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

see my post of the 14th (and 19th). Just use a circular profile. Or
use cadstudio.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

These are all made by sweeping a circle on a helical path. Much easier than using linear_extrude with a twist. [image: image.png] On Fri, 25 Oct 2024 at 22:40, Raymond West via Discuss < discuss@lists.openscad.org> wrote: > cadstudio = cadview... > > On 25/10/2024 21:35, Raymond West via Discuss wrote: > > > > On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote: > >> > >> Morning folks, > >> > >> Is there any way to create a helix with a circular cross-section? I > >> have tried linear_extrude with both a circle & various ovals as > >> input. I’ve tried various BOLS2 threading functions. I can get the > >> helix easily but not with a smooth circle cross-section. > >> > >> Mike > >> > >> > >> _______________________________________________ > >> OpenSCAD mailing list > >> To unsubscribe send an email to discuss-leave@lists.openscad.org > > see my post of the 14th (and 19th). Just use a circular profile. Or > > use cadstudio. > > _______________________________________________ > > OpenSCAD mailing list > > To unsubscribe send an email to discuss-leave@lists.openscad.org > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
SP
Sanjeev Prabhakar
Fri, Oct 25, 2024 11:05 PM

Original poster is sitting quite. It seems he has got his answer

On Sat, 26 Oct, 2024, 3:18 am nop head via Discuss, <
discuss@lists.openscad.org> wrote:

These are all made by sweeping a circle on a helical path. Much easier
than using linear_extrude with a  twist.

[image: image.png]

On Fri, 25 Oct 2024 at 22:40, Raymond West via Discuss <
discuss@lists.openscad.org> wrote:

cadstudio = cadview...

On 25/10/2024 21:35, Raymond West via Discuss wrote:

On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I
have tried linear_extrude with both a circle & various ovals as
input. I’ve tried various BOLS2 threading functions. I can get the
helix easily but not with a smooth circle cross-section.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

see my post of the 14th (and 19th). Just use a circular profile. Or
use cadstudio.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Original poster is sitting quite. It seems he has got his answer On Sat, 26 Oct, 2024, 3:18 am nop head via Discuss, < discuss@lists.openscad.org> wrote: > These are all made by sweeping a circle on a helical path. Much easier > than using linear_extrude with a twist. > > [image: image.png] > > On Fri, 25 Oct 2024 at 22:40, Raymond West via Discuss < > discuss@lists.openscad.org> wrote: > >> cadstudio = cadview... >> >> On 25/10/2024 21:35, Raymond West via Discuss wrote: >> > >> > On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote: >> >> >> >> Morning folks, >> >> >> >> Is there any way to create a helix with a circular cross-section? I >> >> have tried linear_extrude with both a circle & various ovals as >> >> input. I’ve tried various BOLS2 threading functions. I can get the >> >> helix easily but not with a smooth circle cross-section. >> >> >> >> Mike >> >> >> >> >> >> _______________________________________________ >> >> OpenSCAD mailing list >> >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > see my post of the 14th (and 19th). Just use a circular profile. Or >> > use cadstudio. >> > _______________________________________________ >> > OpenSCAD mailing list >> > To unsubscribe send an email to discuss-leave@lists.openscad.org >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
RW
Raymond West
Sat, Oct 26, 2024 11:13 AM

all I need is a design for a nut 😉

On 25/10/2024 22:48, nop head via Discuss wrote:

These are all made by sweeping a circle on a helical path. Much easier
than using linear_extrude with a twist.

image.png

On Fri, 25 Oct 2024 at 22:40, Raymond West via Discuss
discuss@lists.openscad.org wrote:

 cadstudio = cadview...

 On 25/10/2024 21:35, Raymond West via Discuss wrote:

On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular

 cross-section? I

have tried linear_extrude with both a circle & various ovals as
input. I’ve tried various BOLS2 threading functions. I can get the
helix easily but not with a smooth circle cross-section.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

see my post of the 14th (and 19th). Just use a circular profile. Or
use cadstudio.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

 _______________________________________________
 OpenSCAD mailing list
 To unsubscribe send an email to discuss-leave@lists.openscad.org

OpenSCAD mailing list
To unsubscribe send an email todiscuss-leave@lists.openscad.org

all I need is a design for a nut 😉 On 25/10/2024 22:48, nop head via Discuss wrote: > These are all made by sweeping a circle on a helical path. Much easier > than using linear_extrude with a twist. > > image.png > > On Fri, 25 Oct 2024 at 22:40, Raymond West via Discuss > <discuss@lists.openscad.org> wrote: > > cadstudio = cadview... > > On 25/10/2024 21:35, Raymond West via Discuss wrote: > > > > On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote: > >> > >> Morning folks, > >> > >> Is there any way to create a helix with a circular > cross-section? I > >> have tried linear_extrude with both a circle & various ovals as > >> input. I’ve tried various BOLS2 threading functions. I can get the > >> helix easily but not with a smooth circle cross-section. > >> > >> Mike > >> > >> > >> _______________________________________________ > >> OpenSCAD mailing list > >> To unsubscribe send an email to discuss-leave@lists.openscad.org > > see my post of the 14th (and 19th). Just use a circular profile. Or > > use cadstudio. > > _______________________________________________ > > OpenSCAD mailing list > > To unsubscribe send an email to discuss-leave@lists.openscad.org > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email todiscuss-leave@lists.openscad.org
SP
Sanjeev Prabhakar
Sat, Oct 26, 2024 12:32 PM

nice one

On Sat, 26 Oct 2024 at 16:44, Raymond West via Discuss <
discuss@lists.openscad.org> wrote:

all I need is a design for a nut 😉

On 25/10/2024 22:48, nop head via Discuss wrote:

These are all made by sweeping a circle on a helical path. Much easier
than using linear_extrude with a  twist.

[image: image.png]

On Fri, 25 Oct 2024 at 22:40, Raymond West via Discuss <
discuss@lists.openscad.org> wrote:

cadstudio = cadview...

On 25/10/2024 21:35, Raymond West via Discuss wrote:

On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I
have tried linear_extrude with both a circle & various ovals as
input. I’ve tried various BOLS2 threading functions. I can get the
helix easily but not with a smooth circle cross-section.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

see my post of the 14th (and 19th). Just use a circular profile. Or
use cadstudio.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

nice one On Sat, 26 Oct 2024 at 16:44, Raymond West via Discuss < discuss@lists.openscad.org> wrote: > all I need is a design for a nut 😉 > > > > > On 25/10/2024 22:48, nop head via Discuss wrote: > > These are all made by sweeping a circle on a helical path. Much easier > than using linear_extrude with a twist. > > [image: image.png] > > On Fri, 25 Oct 2024 at 22:40, Raymond West via Discuss < > discuss@lists.openscad.org> wrote: > >> cadstudio = cadview... >> >> On 25/10/2024 21:35, Raymond West via Discuss wrote: >> > >> > On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote: >> >> >> >> Morning folks, >> >> >> >> Is there any way to create a helix with a circular cross-section? I >> >> have tried linear_extrude with both a circle & various ovals as >> >> input. I’ve tried various BOLS2 threading functions. I can get the >> >> helix easily but not with a smooth circle cross-section. >> >> >> >> Mike >> >> >> >> >> >> _______________________________________________ >> >> OpenSCAD mailing list >> >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > see my post of the 14th (and 19th). Just use a circular profile. Or >> > use cadstudio. >> > _______________________________________________ >> > OpenSCAD mailing list >> > To unsubscribe send an email to discuss-leave@lists.openscad.org >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
JD
John David
Sat, Oct 26, 2024 5:56 PM

Maybe like the screws that can be tightened turning both left and right?

https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M

That can hurt your noggin, but I get it...

EBo --

On Sat, Oct 26, 2024 at 8:33 AM Sanjeev Prabhakar via Discuss <
discuss@lists.openscad.org> wrote:

nice one

On Sat, 26 Oct 2024 at 16:44, Raymond West via Discuss <
discuss@lists.openscad.org> wrote:

all I need is a design for a nut 😉

On 25/10/2024 22:48, nop head via Discuss wrote:

These are all made by sweeping a circle on a helical path. Much easier
than using linear_extrude with a  twist.

[image: image.png]

On Fri, 25 Oct 2024 at 22:40, Raymond West via Discuss <
discuss@lists.openscad.org> wrote:

cadstudio = cadview...

On 25/10/2024 21:35, Raymond West via Discuss wrote:

On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote:

Morning folks,

Is there any way to create a helix with a circular cross-section? I
have tried linear_extrude with both a circle & various ovals as
input. I’ve tried various BOLS2 threading functions. I can get the
helix easily but not with a smooth circle cross-section.

Mike


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

see my post of the 14th (and 19th). Just use a circular profile. Or
use cadstudio.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Maybe like the screws that can be tightened turning both left and right? https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M That can hurt your noggin, but I get it... EBo -- On Sat, Oct 26, 2024 at 8:33 AM Sanjeev Prabhakar via Discuss < discuss@lists.openscad.org> wrote: > nice one > > On Sat, 26 Oct 2024 at 16:44, Raymond West via Discuss < > discuss@lists.openscad.org> wrote: > >> all I need is a design for a nut 😉 >> >> >> >> >> On 25/10/2024 22:48, nop head via Discuss wrote: >> >> These are all made by sweeping a circle on a helical path. Much easier >> than using linear_extrude with a twist. >> >> [image: image.png] >> >> On Fri, 25 Oct 2024 at 22:40, Raymond West via Discuss < >> discuss@lists.openscad.org> wrote: >> >>> cadstudio = cadview... >>> >>> On 25/10/2024 21:35, Raymond West via Discuss wrote: >>> > >>> > On 25/10/2024 12:35, mike.fraser.1945+osc--- via Discuss wrote: >>> >> >>> >> Morning folks, >>> >> >>> >> Is there any way to create a helix with a circular cross-section? I >>> >> have tried linear_extrude with both a circle & various ovals as >>> >> input. I’ve tried various BOLS2 threading functions. I can get the >>> >> helix easily but not with a smooth circle cross-section. >>> >> >>> >> Mike >>> >> >>> >> >>> >> _______________________________________________ >>> >> OpenSCAD mailing list >>> >> To unsubscribe send an email to discuss-leave@lists.openscad.org >>> > see my post of the 14th (and 19th). Just use a circular profile. Or >>> > use cadstudio. >>> > _______________________________________________ >>> > OpenSCAD mailing list >>> > To unsubscribe send an email to discuss-leave@lists.openscad.org >>> _______________________________________________ >>> OpenSCAD mailing list >>> To unsubscribe send an email to discuss-leave@lists.openscad.org >>> >> >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
RW
Raymond West
Sun, Oct 27, 2024 10:51 AM

fwiw, I made a short length of threaded rod, about a month or two ago, 
with left and right hand threads, and matching huts, one lh thread,
t'other rh. (also an attempt at a nut that 'would go both ways). I
showed it to someone I know, but he liked it so much, he put it in his
pocket. This one will be toroidal, too big for a pocket. With sufficient
stiction between the nuts and the rod, if you hold one nut you think you
can tighten the other one against it, but you can't.

On 26/10/2024 18:56, John David via Discuss wrote:

Maybe like the screws that can be tightened turning both left and right?

https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M
https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M

That can hurt your noggin, but I get it...

  EBo --

fwiw, I made a short length of threaded rod, about a month or two ago,  with left and right hand threads, and matching huts, one lh thread, t'other rh. (also an attempt at a nut that 'would go both ways). I showed it to someone I know, but he liked it so much, he put it in his pocket. This one will be toroidal, too big for a pocket. With sufficient stiction between the nuts and the rod, if you hold one nut you think you can tighten the other one against it, but you can't. On 26/10/2024 18:56, John David via Discuss wrote: > Maybe like the screws that can be tightened turning both left and right? > > https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M > <https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M> > > That can hurt your noggin, but I get it... > >   EBo -- >
AM
Adrian Mariano
Mon, Oct 28, 2024 9:28 PM

Why wouldn't you be able to tighten one nut against another on the helical
threaded rod?  It does seem like the nuts would need to have their
threading skewed by the helical curve and angle.

For anyone who wants a simple example of the double threaded screw, there's
one here:

https://github.com/BelfrySCAD/BOSL2/wiki/threading.scad#module-threaded_rod

See Example 7.

On Sun, Oct 27, 2024 at 6:51 AM Raymond West via Discuss <
discuss@lists.openscad.org> wrote:

fwiw, I made a short length of threaded rod, about a month or two ago,
with left and right hand threads, and matching huts, one lh thread,
t'other rh. (also an attempt at a nut that 'would go both ways). I
showed it to someone I know, but he liked it so much, he put it in his
pocket. This one will be toroidal, too big for a pocket. With sufficient
stiction between the nuts and the rod, if you hold one nut you think you
can tighten the other one against it, but you can't.

On 26/10/2024 18:56, John David via Discuss wrote:

Maybe like the screws that can be tightened turning both left and right?

https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M
https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M

That can hurt your noggin, but I get it...

EBo --


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Why wouldn't you be able to tighten one nut against another on the helical threaded rod? It does seem like the nuts would need to have their threading skewed by the helical curve and angle. For anyone who wants a simple example of the double threaded screw, there's one here: https://github.com/BelfrySCAD/BOSL2/wiki/threading.scad#module-threaded_rod See Example 7. On Sun, Oct 27, 2024 at 6:51 AM Raymond West via Discuss < discuss@lists.openscad.org> wrote: > fwiw, I made a short length of threaded rod, about a month or two ago, > with left and right hand threads, and matching huts, one lh thread, > t'other rh. (also an attempt at a nut that 'would go both ways). I > showed it to someone I know, but he liked it so much, he put it in his > pocket. This one will be toroidal, too big for a pocket. With sufficient > stiction between the nuts and the rod, if you hold one nut you think you > can tighten the other one against it, but you can't. > > On 26/10/2024 18:56, John David via Discuss wrote: > > Maybe like the screws that can be tightened turning both left and right? > > > > https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M > > <https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M> > > > > That can hurt your noggin, but I get it... > > > > EBo -- > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
RW
Raymond West
Tue, Oct 29, 2024 8:13 PM

Hi Adrian,

if you hold one nut, the stiction can hold the stud, allowing the second
nut to be tightened against the first, but when the second nut touches
the first nut, the stud starts turning in the same direction as the
second nut, thus it can not tighten against the first nut. I've not got
my original, since a friend 'borrowed' it, so that is the best
explanation that I can remember. If you hold the stud, then you can
tighten both nuts together, but swap them over, and turn each in the
same direction, they move apart, of course.

I'm not sure of any practical application, but there are plenty of
double threaded nuts and bolts, but with the threads going in the same
direction. Many occurred when going from imperial to metric threads in
the UK🙁.

Best wishes,

Ray

On 28/10/2024 21:28, Adrian Mariano via Discuss wrote:

Why wouldn't you be able to tighten one nut against another on the
helical threaded rod?  It does seem like the nuts would need to have
their threading skewed by the helical curve and angle.

For anyone who wants a simple example of the double threaded screw,
there's one here:

https://github.com/BelfrySCAD/BOSL2/wiki/threading.scad#module-threaded_rod

See Example 7.

On Sun, Oct 27, 2024 at 6:51 AM Raymond West via Discuss
discuss@lists.openscad.org wrote:

 fwiw, I made a short length of threaded rod, about a month or two
 ago,
 with left and right hand threads, and matching huts, one lh thread,
 t'other rh. (also an attempt at a nut that 'would go both ways). I
 showed it to someone I know, but he liked it so much, he put it in
 his
 pocket. This one will be toroidal, too big for a pocket. With
 sufficient
 stiction between the nuts and the rod, if you hold one nut you
 think you
 can tighten the other one against it, but you can't.

 On 26/10/2024 18:56, John David via Discuss wrote:

Maybe like the screws that can be tightened turning both left

 and right?
 <https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M>

<https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M

 <https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M>>

That can hurt your noggin, but I get it...

  EBo --

 _______________________________________________
 OpenSCAD mailing list
 To unsubscribe send an email to discuss-leave@lists.openscad.org

OpenSCAD mailing list
To unsubscribe send an email todiscuss-leave@lists.openscad.org

Hi Adrian, if you hold one nut, the stiction can hold the stud, allowing the second nut to be tightened against the first, but when the second nut touches the first nut, the stud starts turning in the same direction as the second nut, thus it can not tighten against the first nut. I've not got my original, since a friend 'borrowed' it, so that is the best explanation that I can remember. If you hold the stud, then you can tighten both nuts together, but swap them over, and turn each in the same direction, they move apart, of course. I'm not sure of any practical application, but there are plenty of double threaded nuts and bolts, but with the threads going in the same direction. Many occurred when going from imperial to metric threads in the UK🙁. Best wishes, Ray On 28/10/2024 21:28, Adrian Mariano via Discuss wrote: > Why wouldn't you be able to tighten one nut against another on the > helical threaded rod?  It does seem like the nuts would need to have > their threading skewed by the helical curve and angle. > > For anyone who wants a simple example of the double threaded screw, > there's one here: > > https://github.com/BelfrySCAD/BOSL2/wiki/threading.scad#module-threaded_rod > > See Example 7. > > On Sun, Oct 27, 2024 at 6:51 AM Raymond West via Discuss > <discuss@lists.openscad.org> wrote: > > fwiw, I made a short length of threaded rod, about a month or two > ago, > with left and right hand threads, and matching huts, one lh thread, > t'other rh. (also an attempt at a nut that 'would go both ways). I > showed it to someone I know, but he liked it so much, he put it in > his > pocket. This one will be toroidal, too big for a pocket. With > sufficient > stiction between the nuts and the rod, if you hold one nut you > think you > can tighten the other one against it, but you can't. > > On 26/10/2024 18:56, John David via Discuss wrote: > > Maybe like the screws that can be tightened turning both left > and right? > > > > https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M > <https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M> > > <https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M > <https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M>> > > > > That can hurt your noggin, but I get it... > > > >   EBo -- > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email todiscuss-leave@lists.openscad.org
AM
Adrian Mariano
Tue, Oct 29, 2024 9:20 PM

Ray, I think you're talking about the double threaded rod and I
misinterpreted you and thought you were referring to the threaded helix
that you posted.  I have printed the double threaded rod (from the above
posted BOSL2 example) and am still in possession of the print, so I know
how that thing behaves.

On Tue, Oct 29, 2024 at 4:14 PM Raymond West via Discuss <
discuss@lists.openscad.org> wrote:

Hi Adrian,

if you hold one nut, the stiction can hold the stud, allowing the second
nut to be tightened against the first, but when the second nut touches the
first nut, the stud starts turning in the same direction as the second nut,
thus it can not tighten against the first nut. I've not got my original,
since a friend 'borrowed' it, so that is the best explanation that I can
remember. If you hold the stud, then you can tighten both nuts together,
but swap them over, and turn each in the same direction, they move apart,
of course.

I'm not sure of any practical application, but there are plenty of double
threaded nuts and bolts, but with the threads going in the same direction.
Many occurred when going from imperial to metric threads in the UK🙁.

Best wishes,

Ray
On 28/10/2024 21:28, Adrian Mariano via Discuss wrote:

Why wouldn't you be able to tighten one nut against another on the helical
threaded rod?  It does seem like the nuts would need to have their
threading skewed by the helical curve and angle.

For anyone who wants a simple example of the double threaded screw,
there's one here:

https://github.com/BelfrySCAD/BOSL2/wiki/threading.scad#module-threaded_rod

See Example 7.

On Sun, Oct 27, 2024 at 6:51 AM Raymond West via Discuss <
discuss@lists.openscad.org> wrote:

fwiw, I made a short length of threaded rod, about a month or two ago,
with left and right hand threads, and matching huts, one lh thread,
t'other rh. (also an attempt at a nut that 'would go both ways). I
showed it to someone I know, but he liked it so much, he put it in his
pocket. This one will be toroidal, too big for a pocket. With sufficient
stiction between the nuts and the rod, if you hold one nut you think you
can tighten the other one against it, but you can't.

On 26/10/2024 18:56, John David via Discuss wrote:

Maybe like the screws that can be tightened turning both left and right?

https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M
https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M

That can hurt your noggin, but I get it...

EBo --


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Ray, I think you're talking about the double threaded rod and I misinterpreted you and thought you were referring to the threaded helix that you posted. I have printed the double threaded rod (from the above posted BOSL2 example) and am still in possession of the print, so I know how that thing behaves. On Tue, Oct 29, 2024 at 4:14 PM Raymond West via Discuss < discuss@lists.openscad.org> wrote: > Hi Adrian, > > if you hold one nut, the stiction can hold the stud, allowing the second > nut to be tightened against the first, but when the second nut touches the > first nut, the stud starts turning in the same direction as the second nut, > thus it can not tighten against the first nut. I've not got my original, > since a friend 'borrowed' it, so that is the best explanation that I can > remember. If you hold the stud, then you can tighten both nuts together, > but swap them over, and turn each in the same direction, they move apart, > of course. > > I'm not sure of any practical application, but there are plenty of double > threaded nuts and bolts, but with the threads going in the same direction. > Many occurred when going from imperial to metric threads in the UK🙁. > > Best wishes, > > Ray > On 28/10/2024 21:28, Adrian Mariano via Discuss wrote: > > Why wouldn't you be able to tighten one nut against another on the helical > threaded rod? It does seem like the nuts would need to have their > threading skewed by the helical curve and angle. > > For anyone who wants a simple example of the double threaded screw, > there's one here: > > https://github.com/BelfrySCAD/BOSL2/wiki/threading.scad#module-threaded_rod > > See Example 7. > > On Sun, Oct 27, 2024 at 6:51 AM Raymond West via Discuss < > discuss@lists.openscad.org> wrote: > >> fwiw, I made a short length of threaded rod, about a month or two ago, >> with left and right hand threads, and matching huts, one lh thread, >> t'other rh. (also an attempt at a nut that 'would go both ways). I >> showed it to someone I know, but he liked it so much, he put it in his >> pocket. This one will be toroidal, too big for a pocket. With sufficient >> stiction between the nuts and the rod, if you hold one nut you think you >> can tighten the other one against it, but you can't. >> >> On 26/10/2024 18:56, John David via Discuss wrote: >> > Maybe like the screws that can be tightened turning both left and right? >> > >> > https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M >> > <https://www.youtube.com/watch?app=desktop&v=_48-Ike_i6M> >> > >> > That can hurt your noggin, but I get it... >> > >> > EBo -- >> > >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
RS
Robbie Sandberg
Wed, Jun 25, 2025 5:03 PM

Hi!
Can someone tell me the z-position of a threaded_rod in BOSL2 when it’s not translated?
I’m using it in a difference function to cut a thread out of a tube.

difference() {
cylinder(h=50, d=16, $fn=150);
translate([0,0,1.5])
cylinder(h=32.5, d=12);
translate([0,0,34])
threaded_rod(d=12, l=16, pitch=2, internal=false, bevel=0.5);
}

That should bring the top of the rod to the top of the tube, but it doesn’t. Instead the tube is closed at the top.
I also tried adding half the rod’s length to the translation, in case it’s originally centered. That produces an open tube, but with a rim at the top.

I should mention that I’m blind and can’t use the preview.
Any advice is welcome.

Cheers! Robbie

Hi! Can someone tell me the z-position of a threaded_rod in BOSL2 when it’s not translated? I’m using it in a difference function to cut a thread out of a tube. difference() { cylinder(h=50, d=16, $fn=150); translate([0,0,1.5]) cylinder(h=32.5, d=12); translate([0,0,34]) threaded_rod(d=12, l=16, pitch=2, internal=false, bevel=0.5); } That should bring the top of the rod to the top of the tube, but it doesn’t. Instead the tube is closed at the top. I also tried adding half the rod’s length to the translation, in case it’s originally centered. That produces an open tube, but with a rim at the top. I should mention that I’m blind and can’t use the preview. Any advice is welcome. Cheers! Robbie
GH
gene heskett
Wed, Jun 25, 2025 6:14 PM

On 6/25/25 13:04, Robbie Sandberg via Discuss wrote:

Hi!
Can someone tell me the z-position of a threaded_rod in BOSL2 when it’s not translated?
I’m using it in a difference function to cut a thread out of a tube.

difference() {
cylinder(h=50, d=16, $fn=150);
translate([0,0,1.5])
cylinder(h=32.5, d=12);
translate([0,0,34])
threaded_rod(d=12, l=16, pitch=2, internal=false, bevel=0.5);
}

That should bring the top of the rod to the top of the tube, but it doesn’t. Instead the tube is closed at the top.
I also tried adding half the rod’s length to the translation, in case it’s originally centered. That produces an open tube, but with a rim at the top.

I should mention that I’m blind and can’t use the preview.
Any advice is welcome.

That is a limitation I don't have, but what I do in such a case is make
the threaded rod I'm using for a difference, enough longer that both
ends project beyond the length of the item its being differenced out of.
Unfortunately I don't see the code for "threaded_rod()" so I can't test
it  Can that be posted?l

Cheers! Robbie


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis
On 6/25/25 13:04, Robbie Sandberg via Discuss wrote: > Hi! > Can someone tell me the z-position of a threaded_rod in BOSL2 when it’s not translated? > I’m using it in a difference function to cut a thread out of a tube. > > difference() { > cylinder(h=50, d=16, $fn=150); > translate([0,0,1.5]) > cylinder(h=32.5, d=12); > translate([0,0,34]) > threaded_rod(d=12, l=16, pitch=2, internal=false, bevel=0.5); > } > > That should bring the top of the rod to the top of the tube, but it doesn’t. Instead the tube is closed at the top. > I also tried adding half the rod’s length to the translation, in case it’s originally centered. That produces an open tube, but with a rim at the top. > > I should mention that I’m blind and can’t use the preview. > Any advice is welcome. That is a limitation I don't have, but what I do in such a case is make the threaded rod I'm using for a difference, enough longer that both ends project beyond the length of the item its being differenced out of. Unfortunately I don't see the code for "threaded_rod()" so I can't test it  Can that be posted?l > > Cheers! Robbie > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org Cheers, Gene Heskett, CET. -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author, 1940) If we desire respect for the law, we must first make the law respectable. - Louis D. Brandeis
AM
Adrian Mariano
Wed, Jun 25, 2025 8:38 PM

As the subject says, it's a BOSL2 question, which is where threaded_rod is
to be found.

The cylinder() module by default places the cylinder with its bottom on the
XY plane.  You can use center=true to make it center. The BOSL2 commands by
default center objects, so the threaded rod will be centered.  It may work
better to combine this with cyl() which automatically centers for
consistent behavior.  Note that you probably want internal=true if you're
making a threaded hole.  Your model has a 50 unit tall cylinder, so its
top is at z=50.  The top of the threaded rod, which has height 16, is at
z=8.  Since you are beveling you will not want to follow Gene's advice to
make it oversized.  You have a  but your threaded rod is only 16 units
tall.  So you need to raise it by 50-8 units.  So like this:

difference() {
cylinder(h=50, d=16, $fn=150);
translate([0,0,1.5])
cylinder(h=32.5, d=12);
up(50-8)
threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5, bevel1=0);
}

I took the bevel off the bottom because that works better.  Note that
internal=true causes the bevels to reverse.  And you may want to go up by
slightly more to ensure no issues with coplanar faces, but in this case I
think it only matters in preview, which doesn't affect you.  By slightly
more I mean 0.01 units.

The easier way to address this is with attachments.  That looks like this:

include<BOSL2/std.scad>
include<BOSL2/threading.scad>

diff()
cyl(h=50,d=16, $fn=150){
up(1.5)attach(BOT,BOT,inside=true) cyl(h=32.5,d=12);
attach(TOP,TOP,inside=true)
threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5,
bevel1=0);
}

You can also in general explicitly anchor BOSL2 objects so you know where
they are, e.g. with anchor=BOTTOM to put the bottom at the origin, or
anchor=CENTER to center it at the origin.

On Wed, Jun 25, 2025 at 2:15 PM gene heskett via Discuss <
discuss@lists.openscad.org> wrote:

On 6/25/25 13:04, Robbie Sandberg via Discuss wrote:

Hi!
Can someone tell me the z-position of a threaded_rod in BOSL2 when it’s

not translated?

I’m using it in a difference function to cut a thread out of a tube.

difference() {
cylinder(h=50, d=16, $fn=150);
translate([0,0,1.5])
cylinder(h=32.5, d=12);
translate([0,0,34])
threaded_rod(d=12, l=16, pitch=2, internal=false, bevel=0.5);
}

That should bring the top of the rod to the top of the tube, but it

doesn’t. Instead the tube is closed at the top.

I also tried adding half the rod’s length to the translation, in case

it’s originally centered. That produces an open tube, but with a rim at the
top.

I should mention that I’m blind and can’t use the preview.
Any advice is welcome.

That is a limitation I don't have, but what I do in such a case is make
the threaded rod I'm using for a difference, enough longer that both
ends project beyond the length of the item its being differenced out of.
Unfortunately I don't see the code for "threaded_rod()" so I can't test
it  Can that be posted?l

Cheers! Robbie


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis

OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

As the subject says, it's a BOSL2 question, which is where threaded_rod is to be found. The cylinder() module by default places the cylinder with its bottom on the XY plane. You can use center=true to make it center. The BOSL2 commands by default center objects, so the threaded rod will be centered. It may work better to combine this with cyl() which automatically centers for consistent behavior. Note that you probably want internal=true if you're making a threaded hole. Your model has a 50 unit tall cylinder, so its top is at z=50. The top of the threaded rod, which has height 16, is at z=8. Since you are beveling you will not want to follow Gene's advice to make it oversized. You have a but your threaded rod is only 16 units tall. So you need to raise it by 50-8 units. So like this: difference() { cylinder(h=50, d=16, $fn=150); translate([0,0,1.5]) cylinder(h=32.5, d=12); up(50-8) threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5, bevel1=0); } I took the bevel off the bottom because that works better. Note that internal=true causes the bevels to reverse. And you may want to go up by slightly more to ensure no issues with coplanar faces, but in this case I think it only matters in preview, which doesn't affect you. By slightly more I mean 0.01 units. The easier way to address this is with attachments. That looks like this: include<BOSL2/std.scad> include<BOSL2/threading.scad> diff() cyl(h=50,d=16, $fn=150){ up(1.5)attach(BOT,BOT,inside=true) cyl(h=32.5,d=12); attach(TOP,TOP,inside=true) threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5, bevel1=0); } You can also in general explicitly anchor BOSL2 objects so you know where they are, e.g. with anchor=BOTTOM to put the bottom at the origin, or anchor=CENTER to center it at the origin. On Wed, Jun 25, 2025 at 2:15 PM gene heskett via Discuss < discuss@lists.openscad.org> wrote: > On 6/25/25 13:04, Robbie Sandberg via Discuss wrote: > > Hi! > > Can someone tell me the z-position of a threaded_rod in BOSL2 when it’s > not translated? > > I’m using it in a difference function to cut a thread out of a tube. > > > > difference() { > > cylinder(h=50, d=16, $fn=150); > > translate([0,0,1.5]) > > cylinder(h=32.5, d=12); > > translate([0,0,34]) > > threaded_rod(d=12, l=16, pitch=2, internal=false, bevel=0.5); > > } > > > > That should bring the top of the rod to the top of the tube, but it > doesn’t. Instead the tube is closed at the top. > > I also tried adding half the rod’s length to the translation, in case > it’s originally centered. That produces an open tube, but with a rim at the > top. > > > > I should mention that I’m blind and can’t use the preview. > > Any advice is welcome. > That is a limitation I don't have, but what I do in such a case is make > the threaded rod I'm using for a difference, enough longer that both > ends project beyond the length of the item its being differenced out of. > Unfortunately I don't see the code for "threaded_rod()" so I can't test > it Can that be posted?l > > > > Cheers! Robbie > > _______________________________________________ > > OpenSCAD mailing list > > To unsubscribe send an email to discuss-leave@lists.openscad.org > > Cheers, Gene Heskett, CET. > -- > "There are four boxes to be used in defense of liberty: > soap, ballot, jury, and ammo. Please use in that order." > -Ed Howdershelt (Author, 1940) > If we desire respect for the law, we must first make the law respectable. > - Louis D. Brandeis > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
GH
gene heskett
Thu, Jun 26, 2025 12:40 AM

On 6/25/25 16:39, Adrian Mariano via Discuss wrote:

As the subject says, it's a BOSL2 question, which is where threaded_rod is
to be found.

Unfortunately I can't make it work by adding

include </home/gene/.local/share/OpenSCAD/libraries/BOSL2/std.scad>

include
</home/gene/.local/share/OpenSCAD/libraries/BOSL2/threading.scad; as
lines 3 & 4..

Perhaps someone else can help this gentleman. Obviously Adrian, I need
to get more familiar with BOSL2, and/or I need to dl a newer version.

It is now complaining about an error in shapes3d.scad line 15. But it
won't copy/paste from the error box. URL for latest?

The cylinder() module by default places the cylinder with its bottom on the
XY plane.  You can use center=true to make it center. The BOSL2 commands by
default center objects, so the threaded rod will be centered.  It may work
better to combine this with cyl() which automatically centers for
consistent behavior.  Note that you probably want internal=true if you're
making a threaded hole.  Your model has a 50 unit tall cylinder, so its
top is at z=50.  The top of the threaded rod, which has height 16, is at
z=8.  Since you are beveling you will not want to follow Gene's advice to
make it oversized.  You have a  but your threaded rod is only 16 units
tall.  So you need to raise it by 50-8 units.  So like this:

difference() {
cylinder(h=50, d=16, $fn=150);
translate([0,0,1.5])
cylinder(h=32.5, d=12);
up(50-8)
threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5, bevel1=0);
}

I took the bevel off the bottom because that works better.  Note that
internal=true causes the bevels to reverse.  And you may want to go up by
slightly more to ensure no issues with coplanar faces, but in this case I
think it only matters in preview, which doesn't affect you.  By slightly
more I mean 0.01 units.

The easier way to address this is with attachments.  That looks like this:

include<BOSL2/std.scad>
include<BOSL2/threading.scad>

diff()
cyl(h=50,d=16, $fn=150){
up(1.5)attach(BOT,BOT,inside=true) cyl(h=32.5,d=12);
attach(TOP,TOP,inside=true)
threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5,
bevel1=0);
}

You can also in general explicitly anchor BOSL2 objects so you know where
they are, e.g. with anchor=BOTTOM to put the bottom at the origin, or
anchor=CENTER to center it at the origin.

On Wed, Jun 25, 2025 at 2:15 PM gene heskett via Discuss <
discuss@lists.openscad.org> wrote:

On 6/25/25 13:04, Robbie Sandberg via Discuss wrote:

Hi!
Can someone tell me the z-position of a threaded_rod in BOSL2 when it’s

not translated?

I’m using it in a difference function to cut a thread out of a tube.

difference() {
cylinder(h=50, d=16, $fn=150);
translate([0,0,1.5])
cylinder(h=32.5, d=12);
translate([0,0,34])
threaded_rod(d=12, l=16, pitch=2, internal=false, bevel=0.5);
}

That should bring the top of the rod to the top of the tube, but it

doesn’t. Instead the tube is closed at the top.

I also tried adding half the rod’s length to the translation, in case

it’s originally centered. That produces an open tube, but with a rim at the
top.

I should mention that I’m blind and can’t use the preview.
Any advice is welcome.

That is a limitation I don't have, but what I do in such a case is make
the threaded rod I'm using for a difference, enough longer that both
ends project beyond the length of the item its being differenced out of.
Unfortunately I don't see the code for "threaded_rod()" so I can't test
it  Can that be posted?l

Cheers! Robbie


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.
- Louis D. Brandeis


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis
On 6/25/25 16:39, Adrian Mariano via Discuss wrote: > As the subject says, it's a BOSL2 question, which is where threaded_rod is > to be found. Unfortunately I can't make it work by adding include </home/gene/.local/share/OpenSCAD/libraries/BOSL2/std.scad> include </home/gene/.local/share/OpenSCAD/libraries/BOSL2/threading.scad; as lines 3 & 4.. Perhaps someone else can help this gentleman. Obviously Adrian, I need to get more familiar with BOSL2, and/or I need to dl a newer version. It is now complaining about an error in shapes3d.scad line 15. But it won't copy/paste from the error box. URL for latest? > The cylinder() module by default places the cylinder with its bottom on the > XY plane. You can use center=true to make it center. The BOSL2 commands by > default center objects, so the threaded rod will be centered. It may work > better to combine this with cyl() which automatically centers for > consistent behavior. Note that you probably want internal=true if you're > making a threaded hole. Your model has a 50 unit tall cylinder, so its > top is at z=50. The top of the threaded rod, which has height 16, is at > z=8. Since you are beveling you will not want to follow Gene's advice to > make it oversized. You have a but your threaded rod is only 16 units > tall. So you need to raise it by 50-8 units. So like this: > > difference() { > cylinder(h=50, d=16, $fn=150); > translate([0,0,1.5]) > cylinder(h=32.5, d=12); > up(50-8) > threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5, bevel1=0); > } > > I took the bevel off the bottom because that works better. Note that > internal=true causes the bevels to reverse. And you may want to go up by > slightly more to ensure no issues with coplanar faces, but in this case I > think it only matters in preview, which doesn't affect you. By slightly > more I mean 0.01 units. > > The easier way to address this is with attachments. That looks like this: > > include<BOSL2/std.scad> > include<BOSL2/threading.scad> > > diff() > cyl(h=50,d=16, $fn=150){ > up(1.5)attach(BOT,BOT,inside=true) cyl(h=32.5,d=12); > attach(TOP,TOP,inside=true) > threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5, > bevel1=0); > } > > You can also in general explicitly anchor BOSL2 objects so you know where > they are, e.g. with anchor=BOTTOM to put the bottom at the origin, or > anchor=CENTER to center it at the origin. > > > On Wed, Jun 25, 2025 at 2:15 PM gene heskett via Discuss < > discuss@lists.openscad.org> wrote: > >> On 6/25/25 13:04, Robbie Sandberg via Discuss wrote: >>> Hi! >>> Can someone tell me the z-position of a threaded_rod in BOSL2 when it’s >> not translated? >>> I’m using it in a difference function to cut a thread out of a tube. >>> >>> difference() { >>> cylinder(h=50, d=16, $fn=150); >>> translate([0,0,1.5]) >>> cylinder(h=32.5, d=12); >>> translate([0,0,34]) >>> threaded_rod(d=12, l=16, pitch=2, internal=false, bevel=0.5); >>> } >>> >>> That should bring the top of the rod to the top of the tube, but it >> doesn’t. Instead the tube is closed at the top. >>> I also tried adding half the rod’s length to the translation, in case >> it’s originally centered. That produces an open tube, but with a rim at the >> top. >>> I should mention that I’m blind and can’t use the preview. >>> Any advice is welcome. >> That is a limitation I don't have, but what I do in such a case is make >> the threaded rod I'm using for a difference, enough longer that both >> ends project beyond the length of the item its being differenced out of. >> Unfortunately I don't see the code for "threaded_rod()" so I can't test >> it Can that be posted?l >>> Cheers! Robbie >>> _______________________________________________ >>> OpenSCAD mailing list >>> To unsubscribe send an email to discuss-leave@lists.openscad.org >> Cheers, Gene Heskett, CET. >> -- >> "There are four boxes to be used in defense of liberty: >> soap, ballot, jury, and ammo. Please use in that order." >> -Ed Howdershelt (Author, 1940) >> If we desire respect for the law, we must first make the law respectable. >> - Louis D. Brandeis >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org Cheers, Gene Heskett, CET. -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author, 1940) If we desire respect for the law, we must first make the law respectable. - Louis D. Brandeis
AM
Adrian Mariano
Thu, Jun 26, 2025 1:06 AM

The example I posted does not require a recent copy of BOSL2, so your
issues may depend on installation issues, but you didn't post the error
messages so that makes a more detailed diagnosis impossible. You should be
able to include BOSL2 without needing the full path if you have your
library path set up correctly.

If you want the most recent BOSL2 it can be found at:

https://github.com/BelfrySCAD/BOSL2

On Wed, Jun 25, 2025 at 8:40 PM gene heskett via Discuss <
discuss@lists.openscad.org> wrote:

On 6/25/25 16:39, Adrian Mariano via Discuss wrote:

As the subject says, it's a BOSL2 question, which is where threaded_rod

is

to be found.

Unfortunately I can't make it work by adding

include </home/gene/.local/share/OpenSCAD/libraries/BOSL2/std.scad>

include
</home/gene/.local/share/OpenSCAD/libraries/BOSL2/threading.scad; as
lines 3 & 4..

Perhaps someone else can help this gentleman. Obviously Adrian, I need
to get more familiar with BOSL2, and/or I need to dl a newer version.

It is now complaining about an error in shapes3d.scad line 15. But it
won't copy/paste from the error box. URL for latest?

The cylinder() module by default places the cylinder with its bottom on

the

XY plane.  You can use center=true to make it center. The BOSL2 commands

by

default center objects, so the threaded rod will be centered.  It may

work

better to combine this with cyl() which automatically centers for
consistent behavior.  Note that you probably want internal=true if

you're

making a threaded hole.  Your model has a 50 unit tall cylinder, so its
top is at z=50.  The top of the threaded rod, which has height 16, is at
z=8.  Since you are beveling you will not want to follow Gene's advice to
make it oversized.  You have a  but your threaded rod is only 16 units
tall.  So you need to raise it by 50-8 units.  So like this:

difference() {
cylinder(h=50, d=16, $fn=150);
translate([0,0,1.5])
cylinder(h=32.5, d=12);
up(50-8)
threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5,

bevel1=0);

}

I took the bevel off the bottom because that works better.  Note that
internal=true causes the bevels to reverse.  And you may want to go up by
slightly more to ensure no issues with coplanar faces, but in this case I
think it only matters in preview, which doesn't affect you.  By slightly
more I mean 0.01 units.

The easier way to address this is with attachments.  That looks like

this:

include<BOSL2/std.scad>
include<BOSL2/threading.scad>

diff()
cyl(h=50,d=16, $fn=150){
up(1.5)attach(BOT,BOT,inside=true) cyl(h=32.5,d=12);
attach(TOP,TOP,inside=true)
threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5,
bevel1=0);
}

You can also in general explicitly anchor BOSL2 objects so you know where
they are, e.g. with anchor=BOTTOM to put the bottom at the origin, or
anchor=CENTER to center it at the origin.

On Wed, Jun 25, 2025 at 2:15 PM gene heskett via Discuss <
discuss@lists.openscad.org> wrote:

On 6/25/25 13:04, Robbie Sandberg via Discuss wrote:

Hi!
Can someone tell me the z-position of a threaded_rod in BOSL2 when it’s

not translated?

I’m using it in a difference function to cut a thread out of a tube.

difference() {
cylinder(h=50, d=16, $fn=150);
translate([0,0,1.5])
cylinder(h=32.5, d=12);
translate([0,0,34])
threaded_rod(d=12, l=16, pitch=2, internal=false, bevel=0.5);
}

That should bring the top of the rod to the top of the tube, but it

doesn’t. Instead the tube is closed at the top.

I also tried adding half the rod’s length to the translation, in case

it’s originally centered. That produces an open tube, but with a rim at

the

top.

I should mention that I’m blind and can’t use the preview.
Any advice is welcome.

That is a limitation I don't have, but what I do in such a case is make
the threaded rod I'm using for a difference, enough longer that both
ends project beyond the length of the item its being differenced out of.
Unfortunately I don't see the code for "threaded_rod()" so I can't test
it  Can that be posted?l

Cheers! Robbie


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law

respectable.

- Louis D. Brandeis

OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

Cheers, Gene Heskett, CET.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis

OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

The example I posted does not require a recent copy of BOSL2, so your issues may depend on installation issues, but you didn't post the error messages so that makes a more detailed diagnosis impossible. You should be able to include BOSL2 without needing the full path if you have your library path set up correctly. If you want the most recent BOSL2 it can be found at: https://github.com/BelfrySCAD/BOSL2 On Wed, Jun 25, 2025 at 8:40 PM gene heskett via Discuss < discuss@lists.openscad.org> wrote: > > On 6/25/25 16:39, Adrian Mariano via Discuss wrote: > > As the subject says, it's a BOSL2 question, which is where threaded_rod > is > > to be found. > > Unfortunately I can't make it work by adding > > include </home/gene/.local/share/OpenSCAD/libraries/BOSL2/std.scad> > > include > </home/gene/.local/share/OpenSCAD/libraries/BOSL2/threading.scad; as > lines 3 & 4.. > > Perhaps someone else can help this gentleman. Obviously Adrian, I need > to get more familiar with BOSL2, and/or I need to dl a newer version. > > It is now complaining about an error in shapes3d.scad line 15. But it > won't copy/paste from the error box. URL for latest? > > > The cylinder() module by default places the cylinder with its bottom on > the > > XY plane. You can use center=true to make it center. The BOSL2 commands > by > > default center objects, so the threaded rod will be centered. It may > work > > better to combine this with cyl() which automatically centers for > > consistent behavior. Note that you probably want internal=true if > you're > > making a threaded hole. Your model has a 50 unit tall cylinder, so its > > top is at z=50. The top of the threaded rod, which has height 16, is at > > z=8. Since you are beveling you will not want to follow Gene's advice to > > make it oversized. You have a but your threaded rod is only 16 units > > tall. So you need to raise it by 50-8 units. So like this: > > > > difference() { > > cylinder(h=50, d=16, $fn=150); > > translate([0,0,1.5]) > > cylinder(h=32.5, d=12); > > up(50-8) > > threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5, > bevel1=0); > > } > > > > I took the bevel off the bottom because that works better. Note that > > internal=true causes the bevels to reverse. And you may want to go up by > > slightly more to ensure no issues with coplanar faces, but in this case I > > think it only matters in preview, which doesn't affect you. By slightly > > more I mean 0.01 units. > > > > The easier way to address this is with attachments. That looks like > this: > > > > include<BOSL2/std.scad> > > include<BOSL2/threading.scad> > > > > diff() > > cyl(h=50,d=16, $fn=150){ > > up(1.5)attach(BOT,BOT,inside=true) cyl(h=32.5,d=12); > > attach(TOP,TOP,inside=true) > > threaded_rod(d=12, l=16, pitch=2, internal=true, bevel2=0.5, > > bevel1=0); > > } > > > > You can also in general explicitly anchor BOSL2 objects so you know where > > they are, e.g. with anchor=BOTTOM to put the bottom at the origin, or > > anchor=CENTER to center it at the origin. > > > > > > On Wed, Jun 25, 2025 at 2:15 PM gene heskett via Discuss < > > discuss@lists.openscad.org> wrote: > > > >> On 6/25/25 13:04, Robbie Sandberg via Discuss wrote: > >>> Hi! > >>> Can someone tell me the z-position of a threaded_rod in BOSL2 when it’s > >> not translated? > >>> I’m using it in a difference function to cut a thread out of a tube. > >>> > >>> difference() { > >>> cylinder(h=50, d=16, $fn=150); > >>> translate([0,0,1.5]) > >>> cylinder(h=32.5, d=12); > >>> translate([0,0,34]) > >>> threaded_rod(d=12, l=16, pitch=2, internal=false, bevel=0.5); > >>> } > >>> > >>> That should bring the top of the rod to the top of the tube, but it > >> doesn’t. Instead the tube is closed at the top. > >>> I also tried adding half the rod’s length to the translation, in case > >> it’s originally centered. That produces an open tube, but with a rim at > the > >> top. > >>> I should mention that I’m blind and can’t use the preview. > >>> Any advice is welcome. > >> That is a limitation I don't have, but what I do in such a case is make > >> the threaded rod I'm using for a difference, enough longer that both > >> ends project beyond the length of the item its being differenced out of. > >> Unfortunately I don't see the code for "threaded_rod()" so I can't test > >> it Can that be posted?l > >>> Cheers! Robbie > >>> _______________________________________________ > >>> OpenSCAD mailing list > >>> To unsubscribe send an email to discuss-leave@lists.openscad.org > >> Cheers, Gene Heskett, CET. > >> -- > >> "There are four boxes to be used in defense of liberty: > >> soap, ballot, jury, and ammo. Please use in that order." > >> -Ed Howdershelt (Author, 1940) > >> If we desire respect for the law, we must first make the law > respectable. > >> - Louis D. Brandeis > >> _______________________________________________ > >> OpenSCAD mailing list > >> To unsubscribe send an email to discuss-leave@lists.openscad.org > >> > > > > _______________________________________________ > > OpenSCAD mailing list > > To unsubscribe send an email to discuss-leave@lists.openscad.org > > Cheers, Gene Heskett, CET. > -- > "There are four boxes to be used in defense of liberty: > soap, ballot, jury, and ammo. Please use in that order." > -Ed Howdershelt (Author, 1940) > If we desire respect for the law, we must first make the law respectable. > - Louis D. Brandeis > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
GH
gene heskett
Thu, Jun 26, 2025 5:48 AM

On 6/25/25 21:07, Adrian Mariano via Discuss wrote:

The example I posted does not require a recent copy of BOSL2, so your
issues may depend on installation issues, but you didn't post the error
messages so that makes a more detailed diagnosis impossible. You should be
able to include BOSL2 without needing the full path if you have your
library path set up correctly.

Apparently I don't.  And its not well covered in the cheat sheet.

If you want the most recent BOSL2 it can be found at:

https://github.com/BelfrySCAD/BOSL2

Thank you.

Cheers, Gene Heskett, CET.

--
"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

  • Louis D. Brandeis
On 6/25/25 21:07, Adrian Mariano via Discuss wrote: > The example I posted does not require a recent copy of BOSL2, so your > issues may depend on installation issues, but you didn't post the error > messages so that makes a more detailed diagnosis impossible. You should be > able to include BOSL2 without needing the full path if you have your > library path set up correctly. Apparently I don't.  And its not well covered in the cheat sheet. > If you want the most recent BOSL2 it can be found at: > > https://github.com/BelfrySCAD/BOSL2 Thank you. Cheers, Gene Heskett, CET. -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author, 1940) If we desire respect for the law, we must first make the law respectable. - Louis D. Brandeis