chiark / gitweb /
shelf-label-holder: by eye adjustments
[reprap-play.git] / shelf-label-holder.scad
1 // -*- C -*-
2
3 prong_nomdepth = 15;
4 prong_curverad = 30;
5 prong_thick = 0.7;
6 prong_maxdepth = 18;
7
8 front_thick = 2.5;
9
10 nom_shelf = 14.54;
11
12 interference = 0.25;
13
14 // calculated
15
16 interference_angle = atan2(interference, prong_nomdepth);
17
18 module ProngElevationUnrotated(){
19   intersection(){
20     union(){
21       translate([ prong_nomdepth, prong_curverad ])
22         circle( prong_curverad , $fa=0.5 );
23       translate([ -10, 0 ])
24         square([ prong_nomdepth + 10, 10 ]);
25     }
26     translate([-5, -5])
27       square([ prong_maxdepth + 5, prong_thick + 5]);
28   }
29 }
30
31 module Elevation(){
32   difference(){
33     union(){
34       rotate(-interference_angle)
35         ProngElevationUnrotated();
36       translate([0, -nom_shelf])
37         mirror([0,1])
38         rotate(-interference_angle)
39         ProngElevationUnrotated();
40       translate([-10, -nom_shelf - prong_thick/2])
41         square([10, nom_shelf + prong_thick]);
42     }
43     mirror([1,0])
44       translate([ front_thick, -100 ])
45       square([ 50, 200 ]);
46   }
47 }
48
49 //ProngElevationUnrotated();
50 Elevation();