discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

Euler Vase - Possible Openscad?

U
unkerjay
Tue, Mar 14, 2017 1:09 AM

Euler Vase
http://www.instructables.com/id/Euler-Vase/

It looks like a polygon with truncations and snubs.  Flattened on the bottom
and the top
and a boolean (difference) cylinder.

This can be done in Blender using Math Solids under Extra Objects and the
Boolean Modifier.

Is it possible to do this programmatically using OpenSCAD?

--
View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Euler Vase http://www.instructables.com/id/Euler-Vase/ It looks like a polygon with truncations and snubs. Flattened on the bottom and the top and a boolean (difference) cylinder. This can be done in Blender using Math Solids under Extra Objects and the Boolean Modifier. Is it possible to do this programmatically using OpenSCAD? -- View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873.html Sent from the OpenSCAD mailing list archive at Nabble.com.
M
MichaelAtOz
Tue, Mar 14, 2017 1:37 AM

Yes, you could build all the polygons yourself, but I'd map the points of the
vertices and hull it. Like so:
http://forum.openscad.org/file/n20875/hull_points.jpg


Admin - PM me if you need anything, or if I've done something stupid...

Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above.

The TPP is no simple “trade agreement.”  Fight it! http://www.ourfairdeal.org/  time is running out!

View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873p20875.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Yes, you could build all the polygons yourself, but I'd map the points of the vertices and hull it. Like so: <http://forum.openscad.org/file/n20875/hull_points.jpg> ----- Admin - PM me if you need anything, or if I've done something stupid... Unless specifically shown otherwise above, my contribution is in the Public Domain; to the extent possible under law, I have waived all copyright and related or neighbouring rights to this work. Obviously inclusion of works of previous authors is not included in the above. The TPP is no simple “trade agreement.” Fight it! http://www.ourfairdeal.org/ time is running out! -- View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873p20875.html Sent from the OpenSCAD mailing list archive at Nabble.com.
BL
Bryan Lee
Tue, Mar 14, 2017 2:24 AM

Thus unkerjay hast written on Mon, Mar 13, 2017 at 06:09:00PM -0700, and, according to prophecy, it shall come to pass that:

Euler Vase
http://www.instructables.com/id/Euler-Vase/

It looks like a polygon with truncations and snubs.  Flattened on the bottom
and the top and a boolean (difference) cylinder.

Is it possible to do this programmatically using OpenSCAD?

I would make this by starting with a rectangular cube, and differencing
off a bunch of other cubes that have been rotate() { translate() { rotate() } }
at various  distances and angles.

Thus unkerjay hast written on Mon, Mar 13, 2017 at 06:09:00PM -0700, and, according to prophecy, it shall come to pass that: > Euler Vase > http://www.instructables.com/id/Euler-Vase/ > > It looks like a polygon with truncations and snubs. Flattened on the bottom > and the top and a boolean (difference) cylinder. > > Is it possible to do this programmatically using OpenSCAD? I would make this by starting with a rectangular cube, and differencing off a bunch of other cubes that have been rotate() { translate() { rotate() } } at various distances and angles.
R
Ronaldo
Tue, Mar 14, 2017 4:31 AM

The vase is a simple polyhedron so it is certainly possible. Doing it
randomly is easy.

n  = 50; // number of facets
d  = 40; // approx. center diameter
h  = 80; // vase height
r  = 80; // trimming radius
hd = 15; // hole diameter

difference(){
intersection() {
cube([d,d,h], center=true);
intersection_for(i=[0:n-1]) {
a = rands(-1,1,2);
b = asin(h/r/2)/2;
rotate(ba[0],[-sin(360a[1]),cos(360a[1]),0])
rotate([0,0,360
a[1]])
translate([r-d/2,0,0])
cube(2*r, center=true);
}
}
// the hole
translate([0,0,-h/2+1])
cylinder(r=hd/2,h=h);
}

Although the result may be disappointing :)

http://forum.openscad.org/file/n20879/PolyVase.png

--
View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873p20879.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

The vase is a simple polyhedron so it is certainly possible. Doing it randomly is easy. > n = 50; // number of facets > d = 40; // approx. center diameter > h = 80; // vase height > r = 80; // trimming radius > hd = 15; // hole diameter > > difference(){ > intersection() { > cube([d,d,h], center=true); > intersection_for(i=[0:n-1]) { > a = rands(-1,1,2); > b = asin(h/r/2)/2; > rotate(b*a[0],[-sin(360*a[1]),cos(360*a[1]),0]) > rotate([0,0,360*a[1]]) > translate([r-d/2,0,0]) > cube(2*r, center=true); > } > } > // the hole > translate([0,0,-h/2+1]) > cylinder(r=hd/2,h=h); > } Although the result may be disappointing :) <http://forum.openscad.org/file/n20879/PolyVase.png> -- View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873p20879.html Sent from the OpenSCAD mailing list archive at Nabble.com.
U
unkerjay
Tue, Mar 14, 2017 12:49 PM

Ronaldo, I think yours comes closest to being programmatically easier to
modify.

But, I've also noticed that, in changing the variables, there are some
combinations
that work better than others and possibly either some constraints or if/then
might
be useful.

It looks like a matter of "shaving" (slicing?) if you will, substance from a
polygon, in that respect
I think, you're on to something, leebc, the trick would be in adjusting the
angles (or number)
of the cubes from one variation to the next.  Maybe a loop to adjust the
number of cubes and
allow for random placement (probably with constraints) as some placements
would work better
than others.

MichaelatOz, yours looks interesting.  I think in terms of the original
example, perhaps
best to start with a rectangular cube more tall than wide, then you'd still
have to boolean
(difference) the cylinder for the hole.

He references the math of the process in Step 5 if that helps:

"Step 5: The Math of Euler Characteristic (optional)

The title "Euler Vase" refers to the mathematical relationship between
Vertices, Edges, and Faces. Regardless of how you choose to shape the planes
of the vase, the Euler characteristic, X, will always be the same.

X = V - E + F = 2 where V is the number of vertices, E is the number of
edges, and F is the number of faces. For this vase, X = 2, the same Euler
Characteristic. You can count the edges and faces you just sanded to verify
this for yourself. Use pieces of tape to mark which faces/edges/vertices you
count as you go, record the number, then remove the tape and start again.
You can pretend the hole isn't there and count the top as one face, or you
can subdivide the cylindrical portion into faces and edges and vertices and
count them. However, if you make your vase into a "doughnut" by drilling all
the way through, then the Euler characteristic becomes zero! Zero is the
Euler characteristic for all toruses, such as doughnuts and coffee mugs."

It could likely be done more inexpensively with wood, but, then, you'd need
all the requisite tools as well
as the wood itself.

Just seems like, once it's figured out, it could be more readily designed
and modified programmatically either via Python (as in the Math Objects
settings (advantage there, it's possible to save the variations or using
Geodesic Dome settings and saving the variations in separate layers, Nodes
in Blender (Sverchok - addon) or via code in OpenSCAD.

As has been noticed in Blender, Extra Objects (Curves or Mesh) are one off
settings.  Move or Scale your object and the initial settings window
disappears.

That's why, I think OpenSCAD (or Blender scripting or nodes) might be a
better approach.

An interesting exercise.  And different from the vases commonly seen from
OpenSCAD.

--
View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873p20881.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Ronaldo, I think yours comes closest to being programmatically easier to modify. But, I've also noticed that, in changing the variables, there are some combinations that work better than others and possibly either some constraints or if/then might be useful. It looks like a matter of "shaving" (slicing?) if you will, substance from a polygon, in that respect I think, you're on to something, leebc, the trick would be in adjusting the angles (or number) of the cubes from one variation to the next. Maybe a loop to adjust the number of cubes and allow for random placement (probably with constraints) as some placements would work better than others. MichaelatOz, yours looks interesting. I think in terms of the original example, perhaps best to start with a rectangular cube more tall than wide, then you'd still have to boolean (difference) the cylinder for the hole. He references the math of the process in Step 5 if that helps: "Step 5: The Math of Euler Characteristic (optional) The title "Euler Vase" refers to the mathematical relationship between Vertices, Edges, and Faces. Regardless of how you choose to shape the planes of the vase, the Euler characteristic, X, will always be the same. X = V - E + F = 2 where V is the number of vertices, E is the number of edges, and F is the number of faces. For this vase, X = 2, the same Euler Characteristic. You can count the edges and faces you just sanded to verify this for yourself. Use pieces of tape to mark which faces/edges/vertices you count as you go, record the number, then remove the tape and start again. You can pretend the hole isn't there and count the top as one face, or you can subdivide the cylindrical portion into faces and edges and vertices and count them. However, if you make your vase into a "doughnut" by drilling all the way through, then the Euler characteristic becomes zero! Zero is the Euler characteristic for all toruses, such as doughnuts and coffee mugs." It could likely be done more inexpensively with wood, but, then, you'd need all the requisite tools as well as the wood itself. Just seems like, once it's figured out, it could be more readily designed and modified programmatically either via Python (as in the Math Objects settings (advantage there, it's possible to save the variations or using Geodesic Dome settings and saving the variations in separate layers, Nodes in Blender (Sverchok - addon) or via code in OpenSCAD. As has been noticed in Blender, Extra Objects (Curves or Mesh) are one off settings. Move or Scale your object and the initial settings window disappears. That's why, I think OpenSCAD (or Blender scripting or nodes) might be a better approach. An interesting exercise. And different from the vases commonly seen from OpenSCAD. -- View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873p20881.html Sent from the OpenSCAD mailing list archive at Nabble.com.
RP
Ronaldo Persiano
Tue, Mar 14, 2017 4:24 PM

2017-03-14 9:49 GMT-03:00 unkerjay unkerjay@centurylink.net:

An interesting exercise.  And different from the vases commonly seen from
OpenSCAD.

I disagree. The kind of vase we can get from the proposed method is a
polyhedron as any other vase created with OpenSCAD. Or better, it is a
small subset of it: it is a convex polyhedron.

I see two interest in this kind of construction for someone starting his
studies in geometry: to understand a well known property of convex sets and
recognize the conditions under which the Euler characteristic holds. The
woodwork process is just a sequence of planar cuts trimming the initial
block. Geometrically this may be regarded as a set intersection of an
intermediate solid with a half-space. If the initial block is convex, the
final solid will be convex because half-spaces are convex. The behind
concept here is the well proved fact the intersection of convex sets is a
convex set. The hole will destroy the convexity.

I have not read the instructables in detail to see how it applies the Euler
characteristic. But some caution should be taken here and not only with the
genus. If we start with a rectangular block, we will count V = 8, E = 12
and F = 6, so X = 2 as expected. Now suppose that we make a non-trespassing
hole with a square section in the block top face. New vertices, edges and
faces will be added: dV = 8, dE = 12, dF = 5 and the total characteristic
will be 1! Has Euler equation failed? No, because it is valid only for
polyhedron with faces without holes. A small trick allows that faces with
holes be considered: add two edges (not intersecting any other) to the face
connecting two vertices of its inner ring (or rings) to two vertices in the
outer ring. We have added now 2 edges and 1 face and the total
characteristic is again 2.

When there is a genus, the Euler characteristic changes to 2 - 2*G where G
is the number of genus.

In a polyhedron, the facets are planar. What would happen with the Euler
characteristic if instead of trimming the initial block by half-spaces we
use non-planar half-spaces? Nothing changes, the Euler equation still holds
even if the facets are non-planar. It is important to understand that Euler
equation relates to topology and not only geometry. It is a relation valid
for any 2-manifold subdivided in vertices, edges and faces.

2017-03-14 9:49 GMT-03:00 unkerjay <unkerjay@centurylink.net>: > > An interesting exercise. And different from the vases commonly seen from > OpenSCAD. > I disagree. The kind of vase we can get from the proposed method is a polyhedron as any other vase created with OpenSCAD. Or better, it is a small subset of it: it is a convex polyhedron. I see two interest in this kind of construction for someone starting his studies in geometry: to understand a well known property of convex sets and recognize the conditions under which the Euler characteristic holds. The woodwork process is just a sequence of planar cuts trimming the initial block. Geometrically this may be regarded as a set intersection of an intermediate solid with a half-space. If the initial block is convex, the final solid will be convex because half-spaces are convex. The behind concept here is the well proved fact the intersection of convex sets is a convex set. The hole will destroy the convexity. I have not read the instructables in detail to see how it applies the Euler characteristic. But some caution should be taken here and not only with the genus. If we start with a rectangular block, we will count V = 8, E = 12 and F = 6, so X = 2 as expected. Now suppose that we make a non-trespassing hole with a square section in the block top face. New vertices, edges and faces will be added: dV = 8, dE = 12, dF = 5 and the total characteristic will be 1! Has Euler equation failed? No, because it is valid only for polyhedron with faces without holes. A small trick allows that faces with holes be considered: add two edges (not intersecting any other) to the face connecting two vertices of its inner ring (or rings) to two vertices in the outer ring. We have added now 2 edges and 1 face and the total characteristic is again 2. When there is a genus, the Euler characteristic changes to 2 - 2*G where G is the number of genus. In a polyhedron, the facets are planar. What would happen with the Euler characteristic if instead of trimming the initial block by half-spaces we use non-planar half-spaces? Nothing changes, the Euler equation still holds even if the facets are non-planar. It is important to understand that Euler equation relates to topology and not only geometry. It is a relation valid for any 2-manifold subdivided in vertices, edges and faces.
U
unkerjay
Wed, Mar 15, 2017 8:46 AM

Most of what I've seen, openscad related is of vases built around a hollow.

Euler vases differ from that in that, as shown, they are polygons into which
holes are added.

I know that they are "polygons" and in that respect, not particularly
exceptional.

In terms of what I've seen the vast majority, different, interesting.

From an analytical, mathematical perspective, I'm out of my league.

From an aesthetic perspective, relative to the lion's share of vases I've

seen
designed by others using OpenSCAD - different.

Not necessarily remarkable or radically different.  Perhaps mundane from the
vantage point of possibility of designability.

But, first I've seen of it.  Might not be new.  New to me.

--
View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873p20913.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

Most of what I've seen, openscad related is of vases built around a hollow. Euler vases differ from that in that, as shown, they are polygons into which holes are added. I know that they are "polygons" and in that respect, not particularly exceptional. In terms of what I've seen the vast majority, different, interesting. >From an analytical, mathematical perspective, I'm out of my league. >From an aesthetic perspective, relative to the lion's share of vases I've seen designed by others using OpenSCAD - different. Not necessarily remarkable or radically different. Perhaps mundane from the vantage point of possibility of designability. But, first I've seen of it. Might not be new. New to me. -- View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873p20913.html Sent from the OpenSCAD mailing list archive at Nabble.com.
U
unkerjay
Wed, Mar 15, 2017 8:57 AM

And, not just a platonic solid.  That would truly be mundane.

This method adds character, if you will, to the shape.

A difference, so to speak, between a block of ice (or stone, or wood)
and a sculpture.  The selective, subjective removal.

A dodecahedron with a hole in it is still a dodecahedron with a hole in
it.

A round, or ovular bowl or a tall rectangular box with a hole in it not
particularly
distinguished, notable or noteworthy.

This is something more.

--
View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873p20914.html
Sent from the OpenSCAD mailing list archive at Nabble.com.

And, not just a platonic solid. That would truly be mundane. This method adds character, if you will, to the shape. A difference, so to speak, between a block of ice (or stone, or wood) and a sculpture. The selective, subjective removal. A dodecahedron with a hole in it is still a dodecahedron with a hole in it. A round, or ovular bowl or a tall rectangular box with a hole in it not particularly distinguished, notable or noteworthy. This is something more. -- View this message in context: http://forum.openscad.org/Euler-Vase-Possible-Openscad-tp20873p20914.html Sent from the OpenSCAD mailing list archive at Nabble.com.