87 lines
1.4 KiB
OpenSCAD
87 lines
1.4 KiB
OpenSCAD
|
|
$fn=64;
|
|
|
|
eps=0.1;
|
|
|
|
slack = 0.5;
|
|
m3Diameter = 3.0;
|
|
m3Radius = m3Diameter/2.0;
|
|
m3ptr = m3Radius + slack;
|
|
|
|
module baseFrame() {
|
|
difference() {
|
|
cube(size=[200,200,4], center=true);
|
|
cube(size=[180,180,4], center=true);
|
|
}
|
|
|
|
translate(v=[90,90,0])
|
|
cube(size=[20,20, 4],center=true);
|
|
|
|
translate(v=[-90,90,0])
|
|
cube(size=[20,20, 4],center=true);
|
|
|
|
translate(v=[90,-90,0])
|
|
cube(size=[20,20, 4],center=true);
|
|
|
|
translate(v=[-90,-90,0])
|
|
cube(size=[20,20, 4],center=true);
|
|
}
|
|
|
|
module lugBottom() {
|
|
difference() {
|
|
cube(size=[9.7,9.7,6], center=true);
|
|
|
|
translate(v=[1,1,0])
|
|
cube(size=[9.1,9.1,5+1], center=true);
|
|
}
|
|
|
|
}
|
|
|
|
|
|
module base() {
|
|
|
|
difference() {
|
|
union() {
|
|
translate(v=[0,0,4/2])
|
|
baseFrame();
|
|
|
|
|
|
translate(v=[-90,-90,-6/2])
|
|
lugBottom();
|
|
|
|
mirror(v=[1,0,0])
|
|
translate(v=[-90,-90,-6/2])
|
|
lugBottom();
|
|
|
|
mirror(v=[0,1,0])
|
|
translate(v=[-90,-90,-6/2])
|
|
lugBottom();
|
|
|
|
mirror(v=[1,1,0])
|
|
translate(v=[-90,-90,-6/2])
|
|
lugBottom();
|
|
}
|
|
|
|
union() {
|
|
translate(v=[90,90,0])
|
|
cylinder(h = 100, r = m3ptr, $fn=32, center=true);
|
|
|
|
translate(v=[-90,90,0])
|
|
cylinder(h = 100, r = m3ptr, $fn=32, center=true);
|
|
|
|
translate(v=[90,-90,0])
|
|
cylinder(h = 100, r = m3ptr, $fn=32, center=true);
|
|
|
|
translate(v=[-90,-90,0])
|
|
cylinder(h = 100, r = m3ptr, $fn=32, center=true);
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
base();
|
|
|
|
*lugBottom();
|
|
|
|
|