-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathspool.scad
49 lines (46 loc) · 1.59 KB
/
spool.scad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
// Simple spool holder to clamp onto shelf track.
center=40;
length=100;
hole_spacing=8;
hull(){
cylinder(d=center, h=5, $fn=60);
translate([center/2-(center/4),0,100]) cylinder(d=center/4, h=5, $fn=60);
}
hull(){
translate([5,0,90])cylinder(d=center/4, h=5, $fn=60);
translate([center/2-(center/4)+5,0,100]) cylinder(d=center/4, h=5, $fn=60);
}
difference() {
roundcube([center+15, center+15, 5],center=true);
for(i=[-(center+15-hole_spacing)/2, (center+15-hole_spacing)/2]){
for(j=[-(center+15-hole_spacing)/2, (center+15-hole_spacing)/2]){
#translate([i, j, -5/2]) cylinder(d=M5+1.5,h=10);
}
}
}
translate([center+60,0,0])
{
difference() {
roundcube([center+15, center+15, 5],center=true);
for(i=[-(center+15-hole_spacing)/2, (center+15-hole_spacing)/2]){
for(j=[-(center+15-hole_spacing)/2, (center+15-hole_spacing)/2]){
#translate([i, j, -5/2]) cylinder(d=M5,h=10);
}
}
}
difference() {
shim();
# translate([0,0,-50-(5/2)])roundcube([100,100,100], center=true);
}
difference() {
translate([0,0,(track[1]-5)/2])roundcube([center+15, center+15, track[1]-5],center=true);
for(i=[-(center+15-hole_spacing)/2, (center+15-hole_spacing)/2]){
for(j=[-(center+15-hole_spacing)/2, (center+15-hole_spacing)/2]){
#translate([i, j, -5/2]) cylinder(d=M5,h=50);
}
} #translate([0,0,11])rotate([0,90,0])cube(track,center=true);
}
}
use<shim.scad>
use<inc/functions.scad>
include<inc/configuration.scad>