31 lines
597 B
OpenSCAD
31 lines
597 B
OpenSCAD
|
module triPrism(s = 2, h = 4) {
|
||
|
difference() {
|
||
|
cube([s, s, h]);
|
||
|
translate([0, 0, -0.5]) rotate([0, 0, 30]) cube([1.5 * s, 1.5 * s, h + 1]);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
$fn=50;
|
||
|
ep = 0.01;
|
||
|
|
||
|
module industrialCenter() {
|
||
|
|
||
|
// smokestacks
|
||
|
sw = 2.5;
|
||
|
sh = 17;
|
||
|
translate([-1, sw / 2 - 0.1, 0]) cylinder(d=sw, 17);
|
||
|
translate([-1, -sw / 2 + 0.1, 0]) cylinder(d=sw, 17);
|
||
|
|
||
|
// base
|
||
|
bw = 8;
|
||
|
translate([0, -bw / 2, 0]) cube([15, bw, 8]);
|
||
|
|
||
|
// roof
|
||
|
for (i = [0:2]) {
|
||
|
translate([5 * i, bw / 2, 8 - ep]) rotate([90, 0, 0]) triPrism(s = 5, h = 8);
|
||
|
}
|
||
|
|
||
|
}
|
||
|
|
||
|
industrialCenter();
|