discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Stackable Bowls

NS
Nathan Sokalski
Sun, Jun 9, 2024 1:57 AM

I am looking to make egg-shaped bowls for dyeing Easter Eggs. I have created a 2D module that creates the outline of (or filled) the egg shape I want, but in order to make them stackable the sides would need to be sloped. rotate_extrude is not appropriate for this, since I am making an egg shape (not a circular shape). I also looked at using the scale attribute of linear_extrude, but that seemed very confusing, and did not seem to make all sides slope equally. What I would really like to do is create 2 2D shapes & have a non-vertical wall wrapped around them. Does anybody have any advice on making stackable non-standard shapes? Thanks!

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

I am looking to make egg-shaped bowls for dyeing Easter Eggs. I have created a 2D module that creates the outline of (or filled) the egg shape I want, but in order to make them stackable the sides would need to be sloped. rotate_extrude is not appropriate for this, since I am making an egg shape (not a circular shape). I also looked at using the scale attribute of linear_extrude, but that seemed very confusing, and did not seem to make all sides slope equally. What I would really like to do is create 2 2D shapes & have a non-vertical wall wrapped around them. Does anybody have any advice on making stackable non-standard shapes? Thanks! Nathan Sokalski njsokalski@hotmail.com<mailto:njsokalski@hotmail.com>
SP
Sanjeev Prabhakar
Sun, Jun 9, 2024 10:36 AM

egg bowl shape should be stackable:

module egg_bowl()
difference(){
resize([20,10,10])sphere(10,$fn=50);
translate([-15,-15,-1])cube([30,30,10]);
resize([18,9,9])sphere(9,$fn=50);
}

difference()
{
for(i=[0:1.5:5])translate([0,0,i])egg_bowl();
translate([0,-30,-12])cube([30,30,30]);
}

On Sun, 9 Jun 2024 at 07:27, Nathan Sokalski via Discuss <
discuss@lists.openscad.org> wrote:

I am looking to make egg-shaped bowls for dyeing Easter Eggs. I have
created a 2D module that creates the outline of (or filled) the egg shape I
want, but in order to make them stackable the sides would need to be
sloped. rotate_extrude is not appropriate for this, since I am making an
egg shape (not a circular shape). I also looked at using the scale
attribute of linear_extrude, but that seemed very confusing, and did not
seem to make all sides slope equally. What I would really like to do is
create 2 2D shapes & have a non-vertical wall wrapped around them. Does
anybody have any advice on making stackable non-standard shapes? Thanks!

Nathan Sokalski
njsokalski@hotmail.com


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

egg bowl shape should be stackable: module egg_bowl() difference(){ resize([20,10,10])sphere(10,$fn=50); translate([-15,-15,-1])cube([30,30,10]); resize([18,9,9])sphere(9,$fn=50); } difference() { for(i=[0:1.5:5])translate([0,0,i])egg_bowl(); translate([0,-30,-12])cube([30,30,30]); } On Sun, 9 Jun 2024 at 07:27, Nathan Sokalski via Discuss < discuss@lists.openscad.org> wrote: > I am looking to make egg-shaped bowls for dyeing Easter Eggs. I have > created a 2D module that creates the outline of (or filled) the egg shape I > want, but in order to make them stackable the sides would need to be > sloped. rotate_extrude is not appropriate for this, since I am making an > egg shape (not a circular shape). I also looked at using the scale > attribute of linear_extrude, but that seemed very confusing, and did not > seem to make all sides slope equally. What I would really like to do is > create 2 2D shapes & have a non-vertical wall wrapped around them. Does > anybody have any advice on making stackable non-standard shapes? Thanks! > > Nathan Sokalski > njsokalski@hotmail.com > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
AM
Adrian Mariano
Sun, Jun 9, 2024 12:37 PM

I don't really understand the problem you're trying to solve.  Egg shapes
are stackable because of their shape.  (Though a simple egg shape doesn't
have a flat bottom so that it will actually sit stably on the table.  You
can easily make stackable shapes based on any profile by rotating the
profile---eggs do have rotational symmetry around one axis.  If you have a
way to make a desired shape with any width then you can difference two of
them and rotate to get a stackable shape.  But it seems like you're after
something else.

Here's an example of the above approach (similar to what Sanjeev did but an
actual egg shape) using BOSL2:

include <BOSL2/std.scad>

module egg_bowl()
{
r1 = 25; r2 = 18; R = 65; thickness=2;
length = floor(lookup($t, [[0,55], [0.5,90], [1,55]]));
yrot(90)
right_half()
rotate_extrude($fn=64)
right_half(planar=true)
zrot(90)
difference(){
egg(80+2*thickness,r1+thickness,r2+thickness,R+thickness,$fn=180);
egg(80,r1,r2,R,$fn=180);
}
}

back_half()
zcopies(spacing=10, n=4) egg_bowl();

And the result:

[image: image.png]

On Sat, Jun 8, 2024 at 9:57 PM Nathan Sokalski via Discuss <
discuss@lists.openscad.org> wrote:

I am looking to make egg-shaped bowls for dyeing Easter Eggs. I have
created a 2D module that creates the outline of (or filled) the egg shape I
want, but in order to make them stackable the sides would need to be
sloped. rotate_extrude is not appropriate for this, since I am making an
egg shape (not a circular shape). I also looked at using the scale
attribute of linear_extrude, but that seemed very confusing, and did not
seem to make all sides slope equally. What I would really like to do is
create 2 2D shapes & have a non-vertical wall wrapped around them. Does
anybody have any advice on making stackable non-standard shapes? Thanks!

Nathan Sokalski
njsokalski@hotmail.com


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

I don't really understand the problem you're trying to solve. Egg shapes are stackable because of their shape. (Though a simple egg shape doesn't have a flat bottom so that it will actually sit stably on the table. You can easily make stackable shapes based on any profile by rotating the profile---eggs do have rotational symmetry around one axis. If you have a way to make a desired shape with any width then you can difference two of them and rotate to get a stackable shape. But it seems like you're after something else. Here's an example of the above approach (similar to what Sanjeev did but an actual egg shape) using BOSL2: include <BOSL2/std.scad> module egg_bowl() { r1 = 25; r2 = 18; R = 65; thickness=2; length = floor(lookup($t, [[0,55], [0.5,90], [1,55]])); yrot(90) right_half() rotate_extrude($fn=64) right_half(planar=true) zrot(90) difference(){ egg(80+2*thickness,r1+thickness,r2+thickness,R+thickness,$fn=180); egg(80,r1,r2,R,$fn=180); } } back_half() zcopies(spacing=10, n=4) egg_bowl(); And the result: [image: image.png] On Sat, Jun 8, 2024 at 9:57 PM Nathan Sokalski via Discuss < discuss@lists.openscad.org> wrote: > I am looking to make egg-shaped bowls for dyeing Easter Eggs. I have > created a 2D module that creates the outline of (or filled) the egg shape I > want, but in order to make them stackable the sides would need to be > sloped. rotate_extrude is not appropriate for this, since I am making an > egg shape (not a circular shape). I also looked at using the scale > attribute of linear_extrude, but that seemed very confusing, and did not > seem to make all sides slope equally. What I would really like to do is > create 2 2D shapes & have a non-vertical wall wrapped around them. Does > anybody have any advice on making stackable non-standard shapes? Thanks! > > Nathan Sokalski > njsokalski@hotmail.com > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
FH
Father Horton
Sun, Jun 9, 2024 12:48 PM

https://en.m.wikipedia.org/wiki/Superegg

On Sun, Jun 9, 2024 at 7:38 AM Adrian Mariano via Discuss <
discuss@lists.openscad.org> wrote:

I don't really understand the problem you're trying to solve.  Egg shapes
are stackable because of their shape.  (Though a simple egg shape doesn't
have a flat bottom so that it will actually sit stably on the table.  You
can easily make stackable shapes based on any profile by rotating the
profile---eggs do have rotational symmetry around one axis.  If you have a
way to make a desired shape with any width then you can difference two of
them and rotate to get a stackable shape.  But it seems like you're after
something else.

Here's an example of the above approach (similar to what Sanjeev did but
an actual egg shape) using BOSL2:

include <BOSL2/std.scad>

module egg_bowl()
{
r1 = 25; r2 = 18; R = 65; thickness=2;
length = floor(lookup($t, [[0,55], [0.5,90], [1,55]]));
yrot(90)
right_half()
rotate_extrude($fn=64)
right_half(planar=true)
zrot(90)
difference(){
egg(80+2*thickness,r1+thickness,r2+thickness,R+thickness,$fn=180);
egg(80,r1,r2,R,$fn=180);
}
}

back_half()
zcopies(spacing=10, n=4) egg_bowl();

And the result:

[image: image.png]

On Sat, Jun 8, 2024 at 9:57 PM Nathan Sokalski via Discuss <
discuss@lists.openscad.org> wrote:

I am looking to make egg-shaped bowls for dyeing Easter Eggs. I have
created a 2D module that creates the outline of (or filled) the egg shape I
want, but in order to make them stackable the sides would need to be
sloped. rotate_extrude is not appropriate for this, since I am making an
egg shape (not a circular shape). I also looked at using the scale
attribute of linear_extrude, but that seemed very confusing, and did not
seem to make all sides slope equally. What I would really like to do is
create 2 2D shapes & have a non-vertical wall wrapped around them. Does
anybody have any advice on making stackable non-standard shapes? Thanks!

Nathan Sokalski
njsokalski@hotmail.com


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

https://en.m.wikipedia.org/wiki/Superegg On Sun, Jun 9, 2024 at 7:38 AM Adrian Mariano via Discuss < discuss@lists.openscad.org> wrote: > I don't really understand the problem you're trying to solve. Egg shapes > are stackable because of their shape. (Though a simple egg shape doesn't > have a flat bottom so that it will actually sit stably on the table. You > can easily make stackable shapes based on any profile by rotating the > profile---eggs do have rotational symmetry around one axis. If you have a > way to make a desired shape with any width then you can difference two of > them and rotate to get a stackable shape. But it seems like you're after > something else. > > Here's an example of the above approach (similar to what Sanjeev did but > an actual egg shape) using BOSL2: > > include <BOSL2/std.scad> > > module egg_bowl() > { > r1 = 25; r2 = 18; R = 65; thickness=2; > length = floor(lookup($t, [[0,55], [0.5,90], [1,55]])); > yrot(90) > right_half() > rotate_extrude($fn=64) > right_half(planar=true) > zrot(90) > difference(){ > egg(80+2*thickness,r1+thickness,r2+thickness,R+thickness,$fn=180); > egg(80,r1,r2,R,$fn=180); > } > } > > back_half() > zcopies(spacing=10, n=4) egg_bowl(); > > And the result: > > [image: image.png] > > > On Sat, Jun 8, 2024 at 9:57 PM Nathan Sokalski via Discuss < > discuss@lists.openscad.org> wrote: > >> I am looking to make egg-shaped bowls for dyeing Easter Eggs. I have >> created a 2D module that creates the outline of (or filled) the egg shape I >> want, but in order to make them stackable the sides would need to be >> sloped. rotate_extrude is not appropriate for this, since I am making an >> egg shape (not a circular shape). I also looked at using the scale >> attribute of linear_extrude, but that seemed very confusing, and did not >> seem to make all sides slope equally. What I would really like to do is >> create 2 2D shapes & have a non-vertical wall wrapped around them. Does >> anybody have any advice on making stackable non-standard shapes? Thanks! >> >> Nathan Sokalski >> njsokalski@hotmail.com >> _______________________________________________ >> 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 >
HL
Hans L
Tue, Jun 11, 2024 5:23 PM

Without any flattened section on the bottom, I think your bowls will be
very prone to tipping and spilling at the slightest disturbance.

On Sun, Jun 9, 2024 at 7:48 AM Father Horton via Discuss <
discuss@lists.openscad.org> wrote:

https://en.m.wikipedia.org/wiki/Superegg

On Sun, Jun 9, 2024 at 7:38 AM Adrian Mariano via Discuss <
discuss@lists.openscad.org> wrote:

I don't really understand the problem you're trying to solve.  Egg shapes
are stackable because of their shape.  (Though a simple egg shape doesn't
have a flat bottom so that it will actually sit stably on the table.  You
can easily make stackable shapes based on any profile by rotating the
profile---eggs do have rotational symmetry around one axis.  If you have a
way to make a desired shape with any width then you can difference two of
them and rotate to get a stackable shape.  But it seems like you're after
something else.

Here's an example of the above approach (similar to what Sanjeev did but
an actual egg shape) using BOSL2:

include <BOSL2/std.scad>

module egg_bowl()
{
r1 = 25; r2 = 18; R = 65; thickness=2;
length = floor(lookup($t, [[0,55], [0.5,90], [1,55]]));
yrot(90)
right_half()
rotate_extrude($fn=64)
right_half(planar=true)
zrot(90)
difference(){
egg(80+2*thickness,r1+thickness,r2+thickness,R+thickness,$fn=180);
egg(80,r1,r2,R,$fn=180);
}
}

back_half()
zcopies(spacing=10, n=4) egg_bowl();

And the result:

[image: image.png]

On Sat, Jun 8, 2024 at 9:57 PM Nathan Sokalski via Discuss <
discuss@lists.openscad.org> wrote:

I am looking to make egg-shaped bowls for dyeing Easter Eggs. I have
created a 2D module that creates the outline of (or filled) the egg shape I
want, but in order to make them stackable the sides would need to be
sloped. rotate_extrude is not appropriate for this, since I am making an
egg shape (not a circular shape). I also looked at using the scale
attribute of linear_extrude, but that seemed very confusing, and did not
seem to make all sides slope equally. What I would really like to do is
create 2 2D shapes & have a non-vertical wall wrapped around them. Does
anybody have any advice on making stackable non-standard shapes? Thanks!

Nathan Sokalski
njsokalski@hotmail.com


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

Without any flattened section on the bottom, I think your bowls will be very prone to tipping and spilling at the slightest disturbance. On Sun, Jun 9, 2024 at 7:48 AM Father Horton via Discuss < discuss@lists.openscad.org> wrote: > https://en.m.wikipedia.org/wiki/Superegg > > > On Sun, Jun 9, 2024 at 7:38 AM Adrian Mariano via Discuss < > discuss@lists.openscad.org> wrote: > >> I don't really understand the problem you're trying to solve. Egg shapes >> are stackable because of their shape. (Though a simple egg shape doesn't >> have a flat bottom so that it will actually sit stably on the table. You >> can easily make stackable shapes based on any profile by rotating the >> profile---eggs do have rotational symmetry around one axis. If you have a >> way to make a desired shape with any width then you can difference two of >> them and rotate to get a stackable shape. But it seems like you're after >> something else. >> >> Here's an example of the above approach (similar to what Sanjeev did but >> an actual egg shape) using BOSL2: >> >> include <BOSL2/std.scad> >> >> module egg_bowl() >> { >> r1 = 25; r2 = 18; R = 65; thickness=2; >> length = floor(lookup($t, [[0,55], [0.5,90], [1,55]])); >> yrot(90) >> right_half() >> rotate_extrude($fn=64) >> right_half(planar=true) >> zrot(90) >> difference(){ >> egg(80+2*thickness,r1+thickness,r2+thickness,R+thickness,$fn=180); >> egg(80,r1,r2,R,$fn=180); >> } >> } >> >> back_half() >> zcopies(spacing=10, n=4) egg_bowl(); >> >> And the result: >> >> [image: image.png] >> >> >> On Sat, Jun 8, 2024 at 9:57 PM Nathan Sokalski via Discuss < >> discuss@lists.openscad.org> wrote: >> >>> I am looking to make egg-shaped bowls for dyeing Easter Eggs. I have >>> created a 2D module that creates the outline of (or filled) the egg shape I >>> want, but in order to make them stackable the sides would need to be >>> sloped. rotate_extrude is not appropriate for this, since I am making an >>> egg shape (not a circular shape). I also looked at using the scale >>> attribute of linear_extrude, but that seemed very confusing, and did not >>> seem to make all sides slope equally. What I would really like to do is >>> create 2 2D shapes & have a non-vertical wall wrapped around them. Does >>> anybody have any advice on making stackable non-standard shapes? Thanks! >>> >>> Nathan Sokalski >>> njsokalski@hotmail.com >>> _______________________________________________ >>> 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 >