gehäuse.scad 1.42 KB
include <board.scad>
module clicker() {
		 translate([-0.5,19,7]){
					cube([1,20,6]);
					rotate([90,0,180])
							 translate([0,0.3,0])
							 cylinder(r=0.3,$fn=20,h=20);
					}

		 rotate([0,0,90]) translate([-0.5,-65.8,7]){
					cube([1,10,6]);
					rotate([90,0,180])
							 translate([0,0.3,0])
							 cylinder(r=0.3,$fn=20,h=10);
					}
		 rotate([0,0,-90]) translate([-61.9,55.8,7]){
					cube([1,10,6]);
					rotate([90,0,180])
							 translate([0,0.3,0])
							 cylinder(r=0.3,$fn=20,h=10);
					}
		 }


module cutout() {
		 translate([-0.5,-1.2,-2.5]) cube([66.24,63.1,14.7]);
}
module center() {
		 translate([-0.5,-0.5,-2.5]) cube([64.34,61.11,10.93]);
}
module protected() {
		 color([0.8,0,0]) {
					center();
					minkowski(){
							 board();
							 cube([0.2,0.2,0.2], center = true);
					}
		 }
}

module base(){
		 difference() {
					minkowski(){
							 cutout();
							 cube([4,4,4], center = true);
					}
					cutout();
					protected();
					translate([-10,-10,9.9])cube([100,100,10]);
					minkowski(){
							 clicker();
							 sphere(d=0.2, center = true);
					}

		 }

		 /* verschluss einsparungen */


}

module top(){
		 difference() {
					minkowski(){
							 cutout();
							 cube([4,4,4], center = true);
					}
					cutout();
					protected();
					translate([-10,-10,-10])cube([100,100,20.1]);
		 }
		 /* verschluss oben */
		 clicker();
}

translate([-10,0,10])rotate([0,180,0]) top();
base();