I recently saw the M.C. Escher exhibit at the NC Museum of Art, and one piece that stuck with me was Concentric Rinds:
The geometry bugged me for a while until I finally figured it out and sketched it up in OpenSCAD:
Animated:
Here’s a cleaned up version of the OpenSCAD script to generate it – it’s surprisingly simple:
module torus_strip(r, width, thickness) {
rotate_extrude(convexity = 10)
translate([r, 0, 0])
square([thickness,width], center=true);
}
module the_ring(r) {
torus_strip(r, 2, 0.5);
}
$fn = 256;
rotate(180*$t)
for (r=[50,40,30,20]) color([1-r/50+0.5,1-r/50+0.1,r/50+0.1]) {
rotate([ 0, 0, 0]) the_ring(r);
rotate([90, 0, 0]) the_ring(r);
rotate([ 0,90, 0]) the_ring(r);
for (tt=[-60,-120]) rotate([0, tt, 0])
for (t=[0:45:360-1]) rotate([ t, 0, 0])
the_ring(r);
}
It took a while to figure out the geometry, but I finally got it when I saw there were three rings that were simply orthogonal, plus two arrays of 8 rings that intersected at the octagons. That’s how I modeled it above.
I also played with the animation stuff and got this:
Which I think is also neat.
That’s all.