difference() {
union() {
translate([0,0,1]) cylinder(d2=17, d1=13, h=14); //pothole
- translate([0,17.3/2*hole,1]) rotate([0,0,45]) cylinder(d2=12, d1=9.2, h=14, $fn=4); //pothole-join
+ translate([0,6*hole,1]) rotate([0,0,45]) cylinder(d2=12, d1=9.2, h=14, $fn=4); //pothole-join
}
translate([-3,0,-2]) scale([1,0.9,1.3]) rotate([0,90,0]) rotate([0,0,30]) cylinder(d1=5, d2=38, h=15); //balcony clearance
}
module planter(hole=0, hollow=1) {
difference() {
- if(hollow != -1) union() {
+ union() {
cylinder(d2=20, d1=20, h=15); //main hexagon
translate([0,0,-1]) cylinder(d2=17, d1=16.5, h=1); //index
}
- if(hollow != -1) translate([-3,0,-2]) scale([1,0.9,1.22]) rotate([0,90,0]) rotate([0,0,30]) cylinder(d1=1, d2=34, h=15); //balcony
+ translate([-3,0,-2]) scale([1,0.9,1.22]) rotate([0,90,0]) rotate([0,0,30]) cylinder(d1=1, d2=34, h=15); //balcony
if(hollow != 0) cavity(hole);
}
}
module double(ho=1) {
- translate([0,0,0]) planter(1, hollow=ho);
- translate([0,17.3,0]) planter(-1, hollow=ho);
+ translate([0,0,0]) if(ho==-1) cavity( 1); else planter( 1, hollow=ho);
+ translate([0,17.3,0]) if(ho==-1) cavity(-1); else planter(-1, hollow=ho);
}
//!planter();
double(ho=1);
}
translate([20,0,0]) double(ho=-1);
+
}