62 lines
1.1 KiB
OpenSCAD
62 lines
1.1 KiB
OpenSCAD
thick = 1.5;
|
|
size_x = 35;
|
|
size_y = 57.5;
|
|
size_z = 5;
|
|
size_pcb = 1;
|
|
|
|
top_y = 20;
|
|
bot_y = 17.5;
|
|
|
|
mount_x_dist = 7.5;
|
|
mount_y_dist = -5.5;
|
|
mount_hole = 1.5;
|
|
|
|
difference()
|
|
{
|
|
union()
|
|
{
|
|
difference()
|
|
{
|
|
// Main Block
|
|
cube([size_x, size_y, size_z], center = true);
|
|
|
|
// Hollow
|
|
translate([0, 0, thick])
|
|
{
|
|
cube([size_x - 2 * thick, size_y - 2 * thick, size_z], center = true);
|
|
}
|
|
}
|
|
|
|
// Mounts
|
|
for (x = [-1:2:1])
|
|
{
|
|
translate([x * mount_x_dist, mount_y_dist, -size_pcb/2])
|
|
{
|
|
cylinder(size_z - size_pcb, mount_hole + 1, mount_hole + 1, $fn = 360, center = true);
|
|
}
|
|
}
|
|
|
|
|
|
// Top Y
|
|
translate([0, size_y/2 - top_y, -size_pcb/2])
|
|
{
|
|
cube([size_x, thick, size_z - size_pcb], center = true);
|
|
}
|
|
|
|
// Bot Y
|
|
translate([0, -(size_y/2 - bot_y), -size_pcb/2])
|
|
{
|
|
cube([size_x, thick, size_z - size_pcb], center = true);
|
|
}
|
|
}
|
|
|
|
// Mount Holes
|
|
for (x = [-1:2:1])
|
|
{
|
|
translate([x * mount_x_dist, mount_y_dist, -size_pcb/2])
|
|
{
|
|
cylinder(size_z + 1, mount_hole, mount_hole, $fn = 360, center = true);
|
|
}
|
|
}
|
|
}
|