//sgn Dec 2021 //IF YOU TRY TO PREVIEW THIS, IT WILL CRASH. //YOU MUST RENDER IT (F6 not F5.) $fn = 32; //#sphere(d = 75); /* difference(){ sphere(d = 75); translate([0,0,-45]) cube([125,125,50], center = true); translate([0,0,-5]) sphere(d = 55); } */ for(m = [0:5]){ rotate([0,0,m*60]) translate([0,30,0]) for(n = [0:3]){ rotate([n*14+14,0,0]) translate([n*6,n*3,n*-10]) stand(); } } module stand(){ translate([0,0,0]) rotate([0,90,60]) cylinder(d = 100, h =5, center = true, $fn = 6); //cube([100,5,100], center = true); } /* intersection(){ difference(){ for(m = [0:5]){ rotate([0,0,m*60]) translate([0,0,0]) for(n = [0:4]){ rotate([n*-5,0,0]) translate([n*6,n*8.3,0]) hexes(); } } translate([0,0,-45]) cube([125,125,50], center = true); } sphere(d = 75); } */ /* intersection(){ difference(){ union(){ hexes(); mirror([1,0,0]) hexes(); mirror([0,1,0]) hexes(); mirror([1,0,0]) mirror([0,1,0]) hexes(); rotate([0,0,60]) hexes(); rotate([0,0,240]) hexes(); } translate([0,0,-45]) cube([125,125,50], center = true); } sphere(d = 75); } */ module hexes(){ for(j = [0:4]){ rotate([j*-5,0,0]) translate([j*6,j*8.3,0]) for(i = [0:3]){ rotate([0,i*5,0]) translate([i*10,0,0]) linear_extrude(75, center = true, convexity = 10, 100, scale = [2.2,2.2]){ rotate([0,0,30]) difference(){ circle(d = 7.1, $fn = 6); circle(d = 6.3, $fn = 6); } } } } }