74 lines
1.5 KiB
OpenSCAD
74 lines
1.5 KiB
OpenSCAD
$fn=120;
|
|
BORDER=1.2;
|
|
|
|
difference()
|
|
{
|
|
|
|
intersection()
|
|
{
|
|
linear_extrude(28)
|
|
union()
|
|
{
|
|
translate([4.5,0])
|
|
import("/tmp/reddot-cover.svg");
|
|
square([5,5]);
|
|
}
|
|
|
|
translate([0,13,14])
|
|
rotate([0,90,0])
|
|
linear_extrude(55)
|
|
union()
|
|
{
|
|
resize([38,26]) circle(14);
|
|
translate([-19, -13]) square([38, 13]);
|
|
}
|
|
}
|
|
|
|
// Stretched diff model
|
|
translate([4.5,0, BORDER])
|
|
{
|
|
intersection()
|
|
{
|
|
linear_extrude(28-BORDER*2)
|
|
union()
|
|
{
|
|
offset(-BORDER) import("/tmp/reddot-cover.svg");
|
|
translate([BORDER, -10]) square([47.5-BORDER*2, 10+BORDER]);
|
|
translate([46, -2]) square([3, 10]);
|
|
|
|
}
|
|
|
|
translate([0,13,14])
|
|
rotate([0,90,0])
|
|
linear_extrude(55)
|
|
union()
|
|
{
|
|
offset(-BORDER) resize([38,26]) circle(14);
|
|
translate([-19, -18]) square([38, 18]);
|
|
}
|
|
}
|
|
}
|
|
|
|
//Front wire holder
|
|
translate([2, -0.5, 2]) cube([2.5, 6, 11]);
|
|
translate([2, -0.5, 2+11+2]) cube([2.5, 6, 11]);
|
|
}
|
|
|
|
// Lateral holders
|
|
translate([30,4.5,0.1])
|
|
translate([0,0,-5+BORDER+1.3])
|
|
difference()
|
|
{
|
|
sphere(5);
|
|
translate([-5, -5, -10+BORDER+1.3]) cube(10);
|
|
}
|
|
|
|
translate([30,4.5,28-0.1])
|
|
mirror([0,0,1])
|
|
translate([0,0,-5+BORDER+1.3])
|
|
difference()
|
|
{
|
|
sphere(5);
|
|
translate([-5, -5, -10+BORDER+1.3]) cube(10);
|
|
}
|