]> www.fi.muni.cz Git - things.git/blob - chair-wheel-holder.scad
switch holder.scad
[things.git] / chair-wheel-holder.scad
1 infty = 60;
2 eps = 0.01;
3
4 body_h = 4.5;
5 d_out = 33;
6 d_in = 15;
7
8 module spacer() {
9         difference() {
10                 cylinder(r = d_out/2, h = body_h);
11                 translate([0, 0, -eps])
12                         cylinder(r = d_in/2, h = body_h + 2*eps);
13         }
14 }
15
16 cube_d = 21;
17 hole_d = 11.5;
18 hole_d2 = 13;
19 side_cut = 1.5;
20
21 module inner() {
22         difference() {
23                 translate([-cube_d/2, -cube_d/2, 0])
24                         cube([cube_d, cube_d, cube_d]);
25                 // hole
26                 translate([0, 0, -eps])
27                         cylinder(r = hole_d/2, h = cube_d + 2*eps);
28                 // hole - moiddle ring
29                 translate([0, 0, cube_d/2])
30                 for (z = [-1, 1]) scale([1, 1, z])
31                         cylinder(r1 = hole_d2/2, r2 = hole_d/2, h = 1.5);
32                 // bottom cuts
33                 for (x = [-1, 1]) scale([x, 1, 1])
34                 translate([cube_d/2-side_cut, -infty/2, 0])
35                 rotate([0, 45, 0])
36                         cube(infty);
37                 // bottom cuts
38                 for (x = [-1, 1]) scale([x, 1, 1])
39                 translate([cube_d/2, -infty/2, cube_d-side_cut])
40                 rotate([0, -45, 0])
41                         cube(infty);
42         }
43 }
44         
45 spacer();
46
47 translate([d_out, 0, 0]) inner();