discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Wrapping Around A Cylinder

NS
Nathan Sokalski
Thu, Aug 21, 2025 4:52 PM

I often have scenarios in which I need to wrap an element (usually text, but others have occurred) around the side or top of a cylinder. Based on what I have found, the only way to do this is by slicing a child into a large number of pieces using intersection(), rotate(), and translate() inside a for loop. This is not only inefficient, but is not unlikely (depending on the item being wrapped) to cause areas to have holes. I have not yet found a good library that does this, I think (considering that it is not an uncommon task) that there should be a built-in modifier that does this, but if anybody know of any good free libraries as an alternative I would like to know about it. Thanks!

Nathan Sokalski
njsokalski@hotmail.commailto:njsokalski@hotmail.com

I often have scenarios in which I need to wrap an element (usually text, but others have occurred) around the side or top of a cylinder. Based on what I have found, the only way to do this is by slicing a child into a large number of pieces using intersection(), rotate(), and translate() inside a for loop. This is not only inefficient, but is not unlikely (depending on the item being wrapped) to cause areas to have holes. I have not yet found a good library that does this, I think (considering that it is not an uncommon task) that there should be a built-in modifier that does this, but if anybody know of any good free libraries as an alternative I would like to know about it. Thanks! Nathan Sokalski njsokalski@hotmail.com<mailto:njsokalski@hotmail.com>
NH
nop head
Thu, Aug 21, 2025 4:55 PM

NopSCADlib can wrap text around a cylinder. I use it for drawing
electrolytic capacitors.

On Thu, 21 Aug 2025, 17:52 Nathan Sokalski via Discuss, <
discuss@lists.openscad.org> wrote:

I often have scenarios in which I need to wrap an element (usually text,
but others have occurred) around the side or top of a cylinder. Based on
what I have found, the only way to do this is by slicing a child into a
large number of pieces using intersection(), rotate(), and translate()
inside a for loop. This is not only inefficient, but is not unlikely
(depending on the item being wrapped) to cause areas to have holes. I have
not yet found a good library that does this, I think (considering that it
is not an uncommon task) that there should be a built-in modifier that does
this, but if anybody know of any good free libraries as an alternative I
would like to know about it. Thanks!

Nathan Sokalski
njsokalski@hotmail.com


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

NopSCADlib can wrap text around a cylinder. I use it for drawing electrolytic capacitors. On Thu, 21 Aug 2025, 17:52 Nathan Sokalski via Discuss, < discuss@lists.openscad.org> wrote: > I often have scenarios in which I need to wrap an element (usually text, > but others have occurred) around the side or top of a cylinder. Based on > what I have found, the only way to do this is by slicing a child into a > large number of pieces using intersection(), rotate(), and translate() > inside a for loop. This is not only inefficient, but is not unlikely > (depending on the item being wrapped) to cause areas to have holes. I have > not yet found a good library that does this, I think (considering that it > is not an uncommon task) that there should be a built-in modifier that does > this, but if anybody know of any good free libraries as an alternative I > would like to know about it. Thanks! > > Nathan Sokalski > njsokalski@hotmail.com > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org
AM
Adrian Mariano
Thu, Aug 21, 2025 5:43 PM

BOSL2 can wrap 2d geometry with cylindrical_extrude and it can wrap a vnf
(vertex list and face list) around a cylinder with vnf_bend.  I don’t think
you can wrap 3d geometry because it requires a nonlinear transformation to
create the wedges that form the wrapped result.

If all you want is text you should try path_text. Individual letters are
flat but the text curves with the cylinder.

On Thu, Aug 21, 2025 at 12:52 Nathan Sokalski via Discuss <
discuss@lists.openscad.org> wrote:

I often have scenarios in which I need to wrap an element (usually text,
but others have occurred) around the side or top of a cylinder. Based on
what I have found, the only way to do this is by slicing a child into a
large number of pieces using intersection(), rotate(), and translate()
inside a for loop. This is not only inefficient, but is not unlikely
(depending on the item being wrapped) to cause areas to have holes. I have
not yet found a good library that does this, I think (considering that it
is not an uncommon task) that there should be a built-in modifier that does
this, but if anybody know of any good free libraries as an alternative I
would like to know about it. Thanks!

Nathan Sokalski
njsokalski@hotmail.com


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

BOSL2 can wrap 2d geometry with cylindrical_extrude and it can wrap a vnf (vertex list and face list) around a cylinder with vnf_bend. I don’t think you can wrap 3d geometry because it requires a nonlinear transformation to create the wedges that form the wrapped result. If all you want is text you should try path_text. Individual letters are flat but the text curves with the cylinder. On Thu, Aug 21, 2025 at 12:52 Nathan Sokalski via Discuss < discuss@lists.openscad.org> wrote: > I often have scenarios in which I need to wrap an element (usually text, > but others have occurred) around the side or top of a cylinder. Based on > what I have found, the only way to do this is by slicing a child into a > large number of pieces using intersection(), rotate(), and translate() > inside a for loop. This is not only inefficient, but is not unlikely > (depending on the item being wrapped) to cause areas to have holes. I have > not yet found a good library that does this, I think (considering that it > is not an uncommon task) that there should be a built-in modifier that does > this, but if anybody know of any good free libraries as an alternative I > would like to know about it. Thanks! > > Nathan Sokalski > njsokalski@hotmail.com > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org