30 lines
844 B
OpenSCAD
30 lines
844 B
OpenSCAD
|
sharpieRadius = 12/2;
|
||
|
thickness = 2;
|
||
|
|
||
|
magnetThickness = 1.67;
|
||
|
magnetHeight = 19;
|
||
|
magnetWidth = 9.5;
|
||
|
magnetBaseThickness = 1;
|
||
|
|
||
|
wallWidth = 0.6; // for single back wall
|
||
|
magnetPlay = 0.4;
|
||
|
|
||
|
backThickness = thickness + magnetThickness + wallWidth + magnetPlay;
|
||
|
height = magnetBaseThickness*2 + magnetHeight + magnetPlay;
|
||
|
|
||
|
difference() {
|
||
|
linear_extrude(height) {
|
||
|
difference() {
|
||
|
union() {
|
||
|
circle(sharpieRadius + thickness);
|
||
|
translate([-sharpieRadius - thickness, 0])
|
||
|
square([(sharpieRadius + thickness)*2, sharpieRadius + backThickness]);
|
||
|
}
|
||
|
circle(sharpieRadius);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
translate([-magnetWidth/2, sharpieRadius + thickness, magnetBaseThickness])
|
||
|
cube([magnetWidth*2, magnetThickness + magnetPlay, magnetHeight + magnetPlay]);
|
||
|
}
|