Browse Source

Achsen und Basis hinzugefügt

Signed-off-by: Stephan Richter <s.richter@srsoftware.de>
main
Stephan Richter 1 year ago
parent
commit
c13cec4668
  1. 33
      katzenklappe.scad

33
katzenklappe.scad

@ -1,5 +1,7 @@
angle = 10; angle = 20;
raise = 10; axle_dia = 4;
axle_len = 40;
raise = 0;
tunnel_w = 160; tunnel_w = 160;
tunnel_h = 160; tunnel_h = 160;
tunnel_t = 10; // tunnel thickness tunnel_t = 10; // tunnel thickness
@ -7,7 +9,7 @@ tunnel_s = 40; // tunnel spacing: overlap for screws
door_t = 50; // door thickness door_t = 50; // door thickness
plexy_t = 6; // thickness of plexy glass sheet plexy_t = 6; // thickness of plexy glass sheet
gap = 1; // gap between parts moving relative to each other gap = 1; // gap between parts moving relative to each other
seal = 5; // thickness of seal. May be set to gap seal = 1; // thickness of seal. May be set to gap
guide_h = 40; guide_h = 40;
bearing_inner_dia = 10; bearing_inner_dia = 10;
bearing_outer_dia = 20; bearing_outer_dia = 20;
@ -57,8 +59,17 @@ module tunnel(){
tunnel_core(); tunnel_core();
translate(-y*(door_t+tunnel_t)/2) cube([tunnel_w+2*tunnel_s,tunnel_t,tunnel_h+2*tunnel_s],true); // krempe translate(-y*(door_t+tunnel_t)/2) cube([tunnel_w+2*tunnel_s,tunnel_t,tunnel_h+2*tunnel_s],true); // krempe
translate( y*(door_t+tunnel_t)/2) cube([tunnel_w+2*tunnel_s,tunnel_t,tunnel_h+2*tunnel_s],true); // krempe translate( y*(door_t+tunnel_t)/2) cube([tunnel_w+2*tunnel_s,tunnel_t,tunnel_h+2*tunnel_s],true); // krempe
translate((tunnel_t+tunnel_h)/-2*z) hull(){
cube([bearing_h,tunnel_h,tunnel_t],true);
cube([tunnel_w+2*tunnel_t,door_t+2*tunnel_t,tunnel_t],true);
}
}
cube([tunnel_w,door_t+2*tunnel_t+2,tunnel_h],true); // öffnung
translate((tunnel_h+bearing_outer_dia-gap)/-2*z)cube([bearing_h+2*gap,bearing_outer_dia,bearing_outer_dia],true);
translate(z*(sheet_h-rad)/2){
translate( x*(tunnel_t+(tunnel_w-axle_len)/2)) rotate(y*90) cylinder(d=axle_dia+gap,h=axle_len+gap,center=true); // axle
translate(-x*(tunnel_t+(tunnel_w-axle_len)/2)) rotate(y*90) cylinder(d=axle_dia+gap,h=axle_len+gap,center=true); // axle
} }
cube([tunnel_w,door_t+2*tunnel_t+2,tunnel_h],true); // loch
} }
} }
@ -110,6 +121,14 @@ module stopper(){
bearing(); bearing();
} }
module axles(){
translate(z*(sheet_h-rad)/2){
translate( x*(tunnel_t+(tunnel_w-axle_len)/2)) rotate(y*90) cylinder(d=axle_dia,h=axle_len,center=true); // axle
translate(-x*(tunnel_t+(tunnel_w-axle_len)/2)) rotate(y*90) cylinder(d=axle_dia,h=axle_len,center=true); // axle
}
}
module flap(){ module flap(){
translate(z*(sheet_h-rad)/2) rotate(x*angle) { translate(z*(sheet_h-rad)/2) rotate(x*angle) {
difference(){ difference(){
@ -117,6 +136,8 @@ module flap(){
sheets(); sheets();
translate([tunnel_w/ 4,0,rad/-2])screw(); translate([tunnel_w/ 4,0,rad/-2])screw();
translate([tunnel_w/-4,0,rad/-2])screw(); translate([tunnel_w/-4,0,rad/-2])screw();
translate(-x*(tunnel_t+(tunnel_w-axle_len)/2)) rotate(y*90) cylinder(d=axle_dia+gap,h=axle_len+2*gap,center=true);
translate( x*(tunnel_t+(tunnel_w-axle_len)/2)) rotate(y*90) cylinder(d=axle_dia+gap,h=axle_len+2*gap,center=true);
} }
color(plexy) difference(){ color(plexy) difference(){
union(){ union(){
@ -134,7 +155,7 @@ module flap(){
} }
} }
door(); *door();
tunnel(); tunnel();
flap(); flap();
axles();

Loading…
Cancel
Save