discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

lithophane sphere with image

AM
Adrian Mariano
Mon, Mar 25, 2024 2:57 AM

The icosidodecahedron has 32 faces, 12 large pentagons and 20 small
triangles.  It is supported by BOSL2 and you could probably put images onto
the various faces without too much difficulty.  Just working with the plain
dodecahedron seems like another option.  But there's nothing that would
wrap an image across multiple faces, nor anything that would do this job
for the sphere.  There is support for doing this task on a cylinder, which
also happens to be a shape on which it can be done without distortion.

On Sun, Mar 24, 2024 at 4:34 PM Raymond West via Discuss <
discuss@lists.openscad.org> wrote:

Working the other way round, people who make maps would be interested in
a solution. If  your idea  is to create something like a lamp shade,
then an icosidodecahedron is quite a nice shape.  You'll get 12 flat
surfaces to play with. I put some code on thingiverse
https://www.thingiverse.com/thing:6377113,  but there were problems with
how thingiverse handled included stl files on there - it didn't, so it
didn't work too good back then, but the scad code may be of some help.
Use your lithophane/s instead of the rose5.stl.

Best wishes,

Ray

On 24/03/2024 08:25, Gábor Magyar via Discuss wrote:

Hi!

I would like to design a lithophane sphere with several graphic elements

on it.

I have not yet found a solution in Openscad that would support drawing
images onto a spherical surface.

Which library can be used to solve this?
Either by using one image once, or by using one image several times
(rotated by 120 degrees), or by using several images at 120 degrees or
randomly placed.

A tutorial on solving such a task would also be good.

Thanks!


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

The icosidodecahedron has 32 faces, 12 large pentagons and 20 small triangles. It is supported by BOSL2 and you could probably put images onto the various faces without too much difficulty. Just working with the plain dodecahedron seems like another option. But there's nothing that would wrap an image across multiple faces, nor anything that would do this job for the sphere. There is support for doing this task on a cylinder, which also happens to be a shape on which it can be done without distortion. On Sun, Mar 24, 2024 at 4:34 PM Raymond West via Discuss < discuss@lists.openscad.org> wrote: > Working the other way round, people who make maps would be interested in > a solution. If your idea is to create something like a lamp shade, > then an icosidodecahedron is quite a nice shape. You'll get 12 flat > surfaces to play with. I put some code on thingiverse > https://www.thingiverse.com/thing:6377113, but there were problems with > how thingiverse handled included stl files on there - it didn't, so it > didn't work too good back then, but the scad code may be of some help. > Use your lithophane/s instead of the rose5.stl. > > Best wishes, > > Ray > > On 24/03/2024 08:25, Gábor Magyar via Discuss wrote: > > Hi! > > > > > > I would like to design a lithophane sphere with several graphic elements > on it. > > I have not yet found a solution in Openscad that would support drawing > > images onto a spherical surface. > > > > Which library can be used to solve this? > > Either by using one image once, or by using one image several times > > (rotated by 120 degrees), or by using several images at 120 degrees or > > randomly placed. > > > > A tutorial on solving such a task would also be good. > > > > Thanks! > > > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
JB
Jordan Brown
Mon, Mar 25, 2024 3:40 AM

On 3/24/2024 7:49 PM, Father Horton via Discuss wrote:

OpenSCAD is really the wrong tool for this.

https://3dp.rocks/lithophane/?fref=gc
https://www.lithophanemaker.com/

But... but... but... that's CHEATING!

:-)

On 3/24/2024 7:49 PM, Father Horton via Discuss wrote: > OpenSCAD is really the wrong tool for this. > > https://3dp.rocks/lithophane/?fref=gc > https://www.lithophanemaker.com/ > > But... but... but... that's CHEATING! :-)
RD
Revar Desmera
Mon, Mar 25, 2024 4:42 AM

In the BOSL2 library, you can put a texture on a hemicircle using rotate_sweep().  You can convert an image to a heightmap texture using https://github.com/BelfrySCAD/BOSL2/blob/master/scripts/img2tex.py https://github.com/BelfrySCAD/BOSL2/blob/master/scripts/img2.py

For example:
img2tex.py -r 180x180 -v worldmap -o worldmap.scad worldmap.png

And then in your scadfile:
include <BOSL2/std.scad>
include <worldmap.scad>

hemi = [for (phi=[90:-1:-90]) polar_to_xy(50,phi)];
rotate_sweep(hemi, closed=false, texture=worldmap, tex_reps=[1,1]);

Resulting in:

-Revar

On Mar 24, 2024, at 1:25 AM, Gábor Magyar via Discuss discuss@lists.openscad.org wrote:

Hi!

I would like to design a lithophane sphere with several graphic elements on it.
I have not yet found a solution in Openscad that would support drawing
images onto a spherical surface.

Which library can be used to solve this?
Either by using one image once, or by using one image several times
(rotated by 120 degrees), or by using several images at 120 degrees or
randomly placed.

A tutorial on solving such a task would also be good.

Thanks!

--
Üdvözlettel,
Magyar Gábor


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

In the BOSL2 library, you can put a texture on a hemicircle using `rotate_sweep()`. You can convert an image to a heightmap texture using https://github.com/BelfrySCAD/BOSL2/blob/master/scripts/img2tex.py <https://github.com/BelfrySCAD/BOSL2/blob/master/scripts/img2.py> For example: img2tex.py -r 180x180 -v worldmap -o worldmap.scad worldmap.png And then in your scadfile: include <BOSL2/std.scad> include <worldmap.scad> hemi = [for (phi=[90:-1:-90]) polar_to_xy(50,phi)]; rotate_sweep(hemi, closed=false, texture=worldmap, tex_reps=[1,1]); Resulting in:  -Revar > On Mar 24, 2024, at 1:25 AM, Gábor Magyar via Discuss <discuss@lists.openscad.org> wrote: > > Hi! > > > I would like to design a lithophane sphere with several graphic elements on it. > I have not yet found a solution in Openscad that would support drawing > images onto a spherical surface. > > Which library can be used to solve this? > Either by using one image once, or by using one image several times > (rotated by 120 degrees), or by using several images at 120 degrees or > randomly placed. > > A tutorial on solving such a task would also be good. > > Thanks! > > > -- > Üdvözlettel, > Magyar Gábor > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org
JB
Jordan Brown
Mon, Mar 25, 2024 5:29 AM

Awesome!

Awesome!
FH
Father Horton
Mon, Mar 25, 2024 12:02 PM

I take it back! OpenSCAD (with BOSL2) can be the right tool!

On Mon, Mar 25, 2024 at 12:29 AM Jordan Brown via Discuss <
discuss@lists.openscad.org> wrote:

Awesome!


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

I take it back! OpenSCAD (with BOSL2) can be the right tool! On Mon, Mar 25, 2024 at 12:29 AM Jordan Brown via Discuss < discuss@lists.openscad.org> wrote: > Awesome! > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
RW
Raymond West
Mon, Mar 25, 2024 1:03 PM

It looks nice, but that is because the world map was based on a sphere
to start with. For an original  flat image (a photographic lithphane,
say) it would need to be distorted into a shape that looked right on a
spherical surface, and if that were done it would only 'look right' from
one viewpoint. Of course, it may be not a necessity for it to look right
as a few distinct lithophanes, but maybe as an embossed pattern. Maybe
we are trying to solve an xy problem - again. However, it is feasible
with BOS2L to map images to a spherical surface, as you've shown.

On 25/03/2024 04:42, Revar Desmera via Discuss wrote:

In the BOSL2 library, you can put a texture on a hemicircle using
rotate_sweep().  You can convert an image to a heightmap texture
using
https://github.com/BelfrySCAD/BOSL2/blob/master/scripts/img2tex.py
https://github.com/BelfrySCAD/BOSL2/blob/master/scripts/img2.py

For example:

 img2tex.py -r 180x180 -v worldmap -o worldmap.scad worldmap.png

And then in your scadfile:

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

 hemi = [for (phi=[90:-1:-90]) polar_to_xy(50,phi)];
 rotate_sweep(hemi, closed=false, texture=worldmap, tex_reps=[1,1]);

Resulting in:

 Screenshot 2024-03-24 at 9.40.46 PM.png

-Revar

On Mar 24, 2024, at 1:25 AM, Gábor Magyar via Discuss
discuss@lists.openscad.org wrote:

Hi!

I would like to design a lithophane sphere with several graphic
elements on it.
I have not yet found a solution in Openscad that would support drawing
images onto a spherical surface.

Which library can be used to solve this?
Either by using one image once, or by using one image several times
(rotated by 120 degrees), or by using several images at 120 degrees or
randomly placed.

A tutorial on solving such a task would also be good.

Thanks!

--
Üdvözlettel,
Magyar Gábor


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

It looks nice, but that is because the world map was based on a sphere to start with. For an original  flat image (a photographic lithphane, say) it would need to be distorted into a shape that looked right on a spherical surface, and if that were done it would only 'look right' from one viewpoint. Of course, it may be not a necessity for it to look right as a few distinct lithophanes, but maybe as an embossed pattern. Maybe we are trying to solve an xy problem - again. However, it is feasible with BOS2L to map images to a spherical surface, as you've shown. On 25/03/2024 04:42, Revar Desmera via Discuss wrote: > In the BOSL2 library, you can put a texture on a hemicircle using > `rotate_sweep()`.  You can convert an image to a heightmap texture > using > https://github.com/BelfrySCAD/BOSL2/blob/master/scripts/img2tex.py > <https://github.com/BelfrySCAD/BOSL2/blob/master/scripts/img2.py> > > For example: > > img2tex.py -r 180x180 -v worldmap -o worldmap.scad worldmap.png > > > And then in your scadfile: > > include <BOSL2/std.scad> > include <worldmap.scad> > > hemi = [for (phi=[90:-1:-90]) polar_to_xy(50,phi)]; > rotate_sweep(hemi, closed=false, texture=worldmap, tex_reps=[1,1]); > > Resulting in: > > Screenshot 2024-03-24 at 9.40.46 PM.png > > > -Revar > > > >> On Mar 24, 2024, at 1:25 AM, Gábor Magyar via Discuss >> <discuss@lists.openscad.org> wrote: >> >> Hi! >> >> >> I would like to design a lithophane sphere with several graphic >> elements on it. >> I have not yet found a solution in Openscad that would support drawing >> images onto a spherical surface. >> >> Which library can be used to solve this? >> Either by using one image once, or by using one image several times >> (rotated by 120 degrees), or by using several images at 120 degrees or >> randomly placed. >> >> A tutorial on solving such a task would also be good. >> >> Thanks! >> >> >> -- >> Üdvözlettel, >> Magyar Gábor >> _______________________________________________ >> 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
GM
Gábor Magyar
Tue, Mar 26, 2024 8:11 AM

Unfortunately, it doesn't quite do what I want. :(
The goal is 3 separate images placed 120 degrees apart. See the attached files.

The script you specified stretches the image to entire surface.

Unfortunately, it doesn't quite do what I want. :( The goal is 3 separate images placed 120 degrees apart. See the attached files. The script you specified stretches the image to entire surface.
AM
Adrian Mariano
Tue, Mar 26, 2024 10:08 AM

Wouldn't changing tex_reps to [3,1] in the rotate_sweep call give you the
result you're looking for?

On Tue, Mar 26, 2024 at 4:14 AM Gábor Magyar via Discuss <
discuss@lists.openscad.org> wrote:

Unfortunately, it doesn't quite do what I want. :(
The goal is 3 separate images placed 120 degrees apart. See the attached
files.

The script you specified stretches the image to entire surface.


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

Wouldn't changing tex_reps to [3,1] in the rotate_sweep call give you the result you're looking for? On Tue, Mar 26, 2024 at 4:14 AM Gábor Magyar via Discuss < discuss@lists.openscad.org> wrote: > Unfortunately, it doesn't quite do what I want. :( > The goal is 3 separate images placed 120 degrees apart. See the attached > files. > > The script you specified stretches the image to entire surface. > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
SP
Sanjeev Prabhakar
Tue, Mar 26, 2024 3:26 PM

Is this what you are looking for?

[image: image.png]

On Tue, 26 Mar 2024 at 13:44, Gábor Magyar via Discuss <
discuss@lists.openscad.org> wrote:

Unfortunately, it doesn't quite do what I want. :(
The goal is 3 separate images placed 120 degrees apart. See the attached
files.

The script you specified stretches the image to entire surface.


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

Is this what you are looking for? [image: image.png] On Tue, 26 Mar 2024 at 13:44, Gábor Magyar via Discuss < discuss@lists.openscad.org> wrote: > Unfortunately, it doesn't quite do what I want. :( > The goal is 3 separate images placed 120 degrees apart. See the attached > files. > > The script you specified stretches the image to entire surface. > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
SP
Sanjeev Prabhakar
Wed, Mar 27, 2024 1:10 AM

May be something like this would be more interesting:
This is done finding the intersecting lines between a sphere a solid
you can download the file from here:
https://github.com/sprabhakar2006/openSCAD/blob/main/sphere_with_art.scad
[image: image.png]

May be something like this would be more interesting: This is done finding the intersecting lines between a sphere a solid you can download the file from here: https://github.com/sprabhakar2006/openSCAD/blob/main/sphere_with_art.scad [image: image.png]