diff options
author | pacien | 2019-08-12 03:33:00 +0200 |
---|---|---|
committer | pacien | 2019-08-12 03:33:00 +0200 |
commit | 0bcc95d781157499404051ae569140695cc0e65b (patch) | |
tree | e37eec85aff7daea0971383c07339238054595ee /tabletop_tablet_stand_clamp.scad | |
parent | 453630344e12c8f57821a5ee9f56025228599827 (diff) | |
download | tabletop-tablet-stand-0bcc95d781157499404051ae569140695cc0e65b.tar.gz |
import first version
Diffstat (limited to 'tabletop_tablet_stand_clamp.scad')
-rw-r--r-- | tabletop_tablet_stand_clamp.scad | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/tabletop_tablet_stand_clamp.scad b/tabletop_tablet_stand_clamp.scad new file mode 100644 index 0000000..b63dcf2 --- /dev/null +++ b/tabletop_tablet_stand_clamp.scad | |||
@@ -0,0 +1,45 @@ | |||
1 | module prism(l, w, h) { | ||
2 | polyhedron(points=[ | ||
3 | [0,0,h], // 0 front top corner | ||
4 | [0,0,0],[w,0,0], // 1, 2 front left & right bottom corners | ||
5 | [0,l,h], // 3 back top corner | ||
6 | [0,l,0],[w,l,0] // 4, 5 back left & right bottom corners | ||
7 | ], faces=[ // points for all faces must be ordered clockwise when looking in | ||
8 | [0,2,1], // top face | ||
9 | [3,4,5], // base face | ||
10 | [0,1,4,3], // h face | ||
11 | [1,2,5,4], // w face | ||
12 | [0,3,5,2], // hypotenuse face | ||
13 | ]); | ||
14 | } | ||
15 | |||
16 | threadDiameter = 7; | ||
17 | threadTubeOuterDiameter = 11; | ||
18 | |||
19 | baseThickness = 4; | ||
20 | baseHeight = 40; | ||
21 | baseWidth = 80; | ||
22 | |||
23 | gapWidth = 30; | ||
24 | clampDepth = 15; | ||
25 | clampHeight = 10; | ||
26 | |||
27 | difference() { | ||
28 | union() { | ||
29 | cube([baseThickness, baseWidth, baseHeight]); | ||
30 | |||
31 | translate([-clampDepth, 0, 0]) | ||
32 | prism(baseWidth, clampDepth+baseThickness, clampHeight); | ||
33 | |||
34 | translate([0, (baseWidth - threadTubeOuterDiameter)/2, 0]) | ||
35 | cube([threadTubeOuterDiameter, threadTubeOuterDiameter, baseHeight]); | ||
36 | } | ||
37 | |||
38 | // thread hole | ||
39 | translate([threadTubeOuterDiameter/2, baseWidth/2, 0]) | ||
40 | cylinder(r = threadDiameter/2, h = baseHeight); | ||
41 | |||
42 | // clamp gap | ||
43 | translate([-clampDepth, (baseWidth-gapWidth)/2, 0]) | ||
44 | cube([clampDepth, gapWidth, clampHeight]); | ||
45 | } | ||