Files
3d-models/hff/modx8-shure-mic-holder.scad
T
2026-04-26 18:53:58 -05:00

69 lines
2.1 KiB
OpenSCAD

include <../lib/rounded-cube.scad>
$fn=256;
d=40;
l=140;
module version1() {
union() {
difference() {
union() {
rotate([0, 10, 0]) cube([d, l, 50]);
translate([1.5*d, 0, 0]) mirror([1, 0, 0]) rotate([0, 10, 0]) cube([d, l, 50]);
}
translate([0.75*d, l+1, 0.5*d+12]) rotate([90, 0, 0]) cylinder(d=d, h=l+2);
translate([-d, -1, 20]) cube([3*d, l + 2, 40]);
translate([-d, -1, -10]) cube([3*d, l + 2, 10]);
color("red") translate([-1, l*0.5+4, -124]) rotate([0, 90, 0]) cylinder(d=270, h=1.5*d+2);
}
translate([0, 0, 0.01])
difference() {
rotate([-20, 0, 0])
difference() {
union() {
rotate([0, 10, 0]) translate([0, 0, -15-0.01]) cube([1.4*d, 12, 30]);
translate([1.5*d, 0, 0]) mirror([1, 0, 0]) rotate([0, 10, 0]) translate([0, 0, -15-0.01]) cube([1.4*d, 12, 30]);
}
}
translate([-10, -10, -45]) cube([1.5*d + 20, 30, 35]);
translate([-d, -10, 0]) cube([3.5*d, 40, 20]);
translate([-10, -10, -20]) cube([1.5*d + 20, 10, 40]);
}
}
}
module version2() {
difference() {
translate([0, 0, -10]) cube([1.5*d, l, 50]);
// mic handle cut-out
translate([0.75*d, l+1, 0.5*d+12]) rotate([90, 0, 0]) cylinder(d=d, h=l+2);
// top cut
translate([-10, -1, 0.5*d]) cube([1.5*d + 20, l+2, 50]);
// bottom notch cut
translate([0, 12, 0]) rotate([-20, 0, 0]) translate([-1, 0, -20]) cube([1.5*d+2, 20, 20]);
// button flush cut
translate([-1, 12, -20]) cube([1.5*d+2, l, 20]);
// MODX-8 button clearance
union() {
translate([0, 24, 0]) rotate([-20, 0, 0]) translate([-1, 0, -12]) cube([1.5*d+2, 20, 20.5]);
translate([-1, 26.90, -12]) cube([1.5*d+2, l-50, 20]);
translate([0, l-20, 0]) mirror([0, 1, 0]) rotate([-20, 0, 0]) translate([-1, 0, -12]) cube([1.5*d+2, 20, 20.5]);
}
// side-cuts
translate([-8, 0, 0]) rotate([0, 10, 0]) translate([0, -1, -20]) cube([10, l+2, 50]);
color("red") translate([1.5*d, 0, 0]) mirror([1, 0, 0]) translate([-8, 0, 0])rotate([0, 10, 0]) translate([0, -1, -20]) cube([10, l+2, 50]);
}
}
//translate([2*d, 0, 0]) version1();
version2();