chiark / gitweb /
5079008c20140580141d991f5b4f6f8bc4f97475
[reprap-play.git] / screw-recess-test.scad
1 // -*- C -*-
2
3 cubez = 12;
4
5 shaftz = cubez;
6 recessz = 5;
7
8 tests = [[4 + 0.5,  10 + 1.0]];
9
10 cubexy = 20;
11
12 module RecessScrewCutout_RecessCylinder(recessdia, h){
13   translate([0,0,-1]) cylinder(r=recessdia/2, h=h+1, $fn=40);
14 }
15
16 module RecessedScrewCutout(shaftdia, recessdia) {
17   recesstopz = recessz + 0.5*recessdia + 0.1;
18   xblocky = shaftdia + 0.1;
19
20   translate([0,0,-1]) cylinder(r=shaftdia/2, h=shaftz+2, $fn=20);
21   RecessScrewCutout_RecessCylinder(recessdia, recessz);
22   intersection(){
23     translate([-recessdia*1.5, -xblocky/2, -1])
24       cube([recessdia*3, xblocky, recesstopz+3]);
25     translate([0, -recessdia, recesstopz])
26       rotate([0,135,0]) cube([recessdia, recessdia*2, 10]);
27     RecessScrewCutout_RecessCylinder(recessdia, recesstopz+1);
28   }
29 }
30
31 module Test(){
32   difference(){
33     translate([-cubexy/2, -cubexy/2, 0])
34       cube([cubexy,cubexy,cubez]);
35   }
36 }
37
38 module Hole(){
39     RecessedScrewCutout(tests[0][0],
40                         tests[0][1],
41                         -1);
42 }
43
44 //Test();
45 Hole();