-
Notifications
You must be signed in to change notification settings - Fork 0
/
x_mount.scad
43 lines (30 loc) · 886 Bytes
/
x_mount.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
include <config.scad>
module x_mount(assembly=false) {
color(pla)
difference() {
cube([x_l,x_fan,9], center=true); //body
hull() //clamp
for(i=[[0,0,0],-[x_l/2+0,-x_fan/2+0,0]])
translate([0,0,-9/2-e]+i)
cylinder(d=16, h=3+e);
hull() //groovemount
for(i=[[0,0,0],-[x_l/2,-x_fan/2+0,0]])
translate([0,0,-9/2+3-e/2]+i)
cylinder(d=12, h=6+e);
for(i=[-1,1]) for(j=[-1,1]) //mounting screws
translate([(x_l-NUT_D[3])/2*i,(x_fan-NUT_D[3])/2*j,-9/2-e/2]) {
cylinder(d=NUT_D[3], h=NUT_H[3]+e/2, $fn=6);
press_fit(d=BOLT_D[3], h=9+e);
}
translate([0,12+BOLT_D[3],0]/2) //clamp
rotate([0,90,0])
press_fit(d=BOLT_D[3], h=x_fan+e, center=true);
}
if(assembly) {
color(e3d)
translate([-5,3.4,-3-6.9])
rotate([0,0,180])
import("extra/E3D_v6.stl");
}
}
x_mount(assembly=true);