chiark / gitweb /
cable-hole-trunking-cover: wip, hole
[reprap-play.git] / cable-hole-trunking-cover.scad
1 // -*- C -*-
2
3 holedia = 25.4;
4
5 sidewidth = 5;
6 tapewidth = 7;
7
8 basex = holedia + sidewidth*2;
9 basey = holedia + tapewidth*2;
10
11 bevelz = 3;
12 bevelslope = 0.75;
13 bevely = bevelz * bevelslope;
14
15 basebaset = 2;
16 basebevelt = 3;
17
18 module sheared_cube(sz, xperz, yperz) {
19   multmatrix([[1,0,xperz,0],
20               [0,1,yperz,0],
21               [0,0,1,    0],
22               [0,0,0,    1]])
23     cube(sz);
24 }
25
26 module Base(){
27   difference(){
28     union(){
29       translate([0, basey-basebevelt, 0])
30         sheared_cube([basex, basebevelt, bevelz], 0, bevelslope);
31       sheared_cube([basex, basebevelt, bevelz], 0, -bevelslope);
32       cube([basex, basey, basebaset]);
33     }
34     translate([basex/2, basey/2, -1])
35       cylinder(r=holedia/2, h=bevelz+2);
36   }
37     
38 //  sheared_cube([10,20,30], 0.5, 3);
39 //  cube([basew, baseh, 0.1]);
40 //  translate([
41 }
42
43 Base();