hor_cub_size = 5; hor_cub_width = 1; cub_space = 0.2; vert_cub_size = 4; vert_cube_h = 6; translate([hor_cub_size/2 + cub_space*2,0,0]) cube([hor_cub_size,vert_cube_h,hor_cub_width], center=true); translate([-(hor_cub_size/2 + cub_space*2),0,0]) cube([hor_cub_size,vert_cube_h,hor_cub_width], center=true); rotate([0,0,-2]) translate([0.7,0,0]) cube([hor_cub_width,vert_cube_h,vert_cub_size],center=true); rotate([0,0,2]) translate([-0.7,0,0]) cube([hor_cub_width,vert_cube_h,vert_cub_size],center=true); long_h = 20; long_d = 2.5; cyl_d = 10; cyl_h = 46; cyl_hole_d = 4; translate([cyl_d/2 - long_d/2, long_h/2, 0]) rotate([90,0,0]) cylinder(h=long_h, d=long_d, center=true, $fn=20); translate([-(cyl_d/2 - long_d/2), long_h/2, 0]) rotate([90,0,0]) cylinder(h=long_h, d=long_d, center=true, $fn=20); slit_width = 1; translate([0, long_h + cyl_h/2, 0]) rotate([90,0,0]) difference() { cylinder(d=cyl_d, h=cyl_h, center=true); cylinder(d=cyl_hole_d, h=cyl_h+0.1, center=true, $fn=20); translate([0,-cyl_d/2,0]) cube([slit_width,cyl_d,cyl_h+ 0.1], center=true); }