diff --git a/Spangenzubehör.scad b/Spangenzubehör.scad index c8667e5..366c900 100644 --- a/Spangenzubehör.scad +++ b/Spangenzubehör.scad @@ -19,6 +19,11 @@ vollehoehe = 20; hoehe = vollehoehe-sphere; } +include ; +include ; +include ; +include ; + difference() { Box(); Deckel(); @@ -29,176 +34,4 @@ translate([0, vollelaenge+10,-vollehoehe+wall/2]) { Deckel(griff=true,spiegel=true,kante=true); } -module Deckel(griff=false,spiegel=false,kante=false) { - translate([0,vollelaenge/2,0]) - difference() { - union() { - mirror_copy() - translate([0,-vollelaenge/2,0]) - Deckelhaelfte(kante,spiegel); - } - if(griff) { - scale([0.75,1.25,1]) - difference() { - translate([8,0,vollehoehe-0.3]) - color("red") - cylinder(h=0.5,r=6); - translate([10.5,0,vollehoehe-0.3]) - color("blue") - cylinder(h=1,r=5.5); - translate([7.5,0-6.5,vollehoehe-0.3]) - color("magenta") - cube([9,13,0.5]); - //cube(4,true); - } - scale([0.75,1.25,1]) - difference() { - translate([13,0,vollehoehe-0.3]) - color("red") - cylinder(h=1,r=6); - translate([15.5,0,vollehoehe-0.3]) - color("blue") - cylinder(h=1,r=5.5); - translate([12.5,0-6.5,vollehoehe-0.3]) - color("magenta") - cube([9,13,0.5]); - //cube(4,true); - } - } - } -} -module Deckelhaelfte(kante=false,spiegel=false) { - difference() { - // Deckelplatte - translate([0,rundung/3,vollehoehe-wall/2]) - color("lime") - cube([vollebreite-rundung/3,(vollelaenge-2*rundung/3)/2,wall/2+.1]); - - // Winkel 1 - translate([-1,rundung/3,vollehoehe-wall/2]) - color("brown") - rotate([65,0,0]) - cube([vollebreite-rundung/3+2,wall,wall/2+1]); - - // Winkel 2 - translate([vollebreite-rundung/3*2,vollelaenge-2*rundung/3+wall,vollehoehe]) - color("brown") - rotate([-65,0,-90]) - cube([vollebreite-rundung/3+2,wall,wall/2+1]); - - // Winkel 3 - translate([vollebreite-rundung/3-wall/2-1,-2,vollehoehe-wall/2-1]) - color("red") - rotate([45,0,45]) - cube([10,wall,wall/2+1]); - - // Spiegel - if(spiegel) { - translate([11.5,5,vollehoehe-wall/2+1.5]) - color("lightblue") - cube([vollebreite-rundung/3-16,vollelaenge-17.5,wall/2+1]); - } - - // Kante - if(kante) { - translate([-1,-3.3,vollehoehe-wall/2]) - color("brown") - cube([vollebreite-rundung/3+2,wall,wall/2+1]); - - translate([vollebreite+3.3,0,vollehoehe-wall/2]) - color("brown") - rotate([0,0,90]) - cube([vollelaenge/2,wall,wall/2+1]); - - translate([0.5,0,vollehoehe-wall/2-1]) - color("brown") - rotate([0,0,90]) - cube([vollelaenge/2,wall,wall/2+2]); - } - } -} - -module Box() { -// Box - difference() { - // Box - translate([sphere,sphere,sphere]) - box(); - - // Obere harte Kante - translate([0,0,vollehoehe]) - color("blue",0.7) - cube([vollebreite,vollelaenge,sphere]); - } - - // Hauptsteg - difference() { - //Hauptsteg - translate([wall/2,vollelaenge*0.5,wall/2-0.5]) - color("yellow") - cube([vollebreite-wall+0.1,1,hoehe-0.7]); - - // Durchgriff - translate([vollebreite/2+3.55,vollelaenge*0.5+2.5,17]) - rotate([90,0,0]) - scale([2.25,1]) - cylinder(h=5,r=8.5); - } - // Quersteg 1 - difference() { - translate([13.5,wall/2,wall/2-0.5]) - color("magenta") - cube([1,(vollelaenge-wall)/2+0.1,hoehe-0.7]); - - // Durchgriff - translate([11,wall*1.2,10]) - rotate([0,90,0]) - cylinder(h=4,r=2);} - - // Zyl gebraucht 2/2 - translate([19,vollelaenge/2-4/2,wall/2-0.5]) - color("cyan") - cylinder(h=16.8, r1=3, r2=1.8); -} - -module grundbox() { - // Box - color("purple",0.7) - roundbox(breite,laenge,hoehe); - - // Halter - difference() { - translate([-5,laenge/2,-0.5]) - color("yellow") - cube([10,4,7],true); - rotate([270,0,0]) - translate([-6.75,0.6,laenge/2]) - color("green") - cylinder(h=7,d=4,center=true); - } -} - -module box() { - difference() { - grundbox(); - - // Innenausschnitt - translate([wall/2,wall/2,wall/2]) - color("red",0.7) - roundbox(breite-wall,laenge-wall,hoehe); - - } -} - -module roundbox(w,h,d) { - minkowski(){ - cube([w,h,d]); - sphere(sphere); - } -} - -module mirror_copy(v = [0, 1, 0]) { - children(); - mirror(v) children(); -} \ No newline at end of file