73 lines
2.2 KiB
OpenSCAD
73 lines
2.2 KiB
OpenSCAD
$fn = 256;
|
|
|
|
d_i = 10.8; // Inner diameter of the cymbal mount hole
|
|
|
|
d_o_top = 24; // Diameter of the outer top of the cymbal support
|
|
h_top = 11; // Height of the top part of the cymbal support
|
|
|
|
d_o_bot = 19; // Diameter of the outer bottom of the cymbal support
|
|
h_bot = 10.2; // Height of the bottom part of the cymbal support
|
|
|
|
h_dome = 6.8; // Height of the dome part of the cymbal support
|
|
h_neck = 5; // Height of the neck part of the cymbal support
|
|
|
|
h_flange = 17.5;
|
|
w_flange = 3;
|
|
|
|
h_full = h_bot + h_neck + h_top + h_dome;
|
|
|
|
difference() {
|
|
union() {
|
|
// Bottom part of the cymbal support
|
|
translate([0, 0, h_bot/2 + 0.1])
|
|
cylinder(h = h_bot + 0.2, d = d_o_bot, center = true);
|
|
|
|
// Neck of the cymbal support
|
|
translate([0, 0, h_bot + h_neck / 2])
|
|
cylinder(h = h_neck, d1 = d_o_bot, d2 = d_o_top, center = true);
|
|
|
|
// Top part of the cymbal support
|
|
translate([0, 0, h_bot + h_neck + h_top/2 + 0.1])
|
|
cylinder(h = h_top + 0.2, d = d_o_top, center = true);
|
|
|
|
// Dome on top of the cymbal support
|
|
translate([0, 0, h_bot + h_neck + h_top])
|
|
scale([1, 1, (2*h_dome + 2) / d_o_top])
|
|
sphere(d = d_o_top);
|
|
|
|
// Flange at the bottom of the cymbal support
|
|
translate([-w_flange / 2, d_i / 2, 0]) cube([w_flange, 22, h_flange]);
|
|
|
|
// screw support
|
|
translate([d_o_bot / 2 - 0.2, 0, 9.2 / 2])
|
|
rotate([0, -90, 0]) cylinder(h = 1, d = 9.2, center = true);
|
|
|
|
translate([d_o_bot / 2 - 0.7, -9.2 / 2, 9.2 / 2])
|
|
cube([1, 9.2, h_bot]);
|
|
|
|
}
|
|
|
|
// Cut out the inner hole for mounting
|
|
translate([0, 0, 13])
|
|
cylinder(h = 26.02, d = d_i, center = true);
|
|
|
|
translate([0, 0, 27])
|
|
cylinder(h = 2, d1 = d_i, d2 = 8.4, center = true);
|
|
|
|
translate([0, 0, 27 + (h_full - 27)/2])
|
|
cylinder(h = 1 + h_full - 27, d = 8.4, center = true);
|
|
|
|
// Cut out the screw hole
|
|
translate([d_o_bot / 2 - 0.2, 0, 9.2 / 2])
|
|
rotate([0, -90, 0]) cylinder(h = d_o_bot + 1, d = 4.6, center = true);
|
|
|
|
// Cut off the top (flatten the dome)
|
|
translate([0, 0, h_bot + h_neck + h_top + h_dome+ 2]) cube([d_o_top, d_o_top, 4], center = true);
|
|
|
|
// Cut off the flange at an angle
|
|
translate([0, d_i/2 + 9, 0])
|
|
rotate([33.18, 0, 0])
|
|
translate([-(w_flange + 0.2) / 2, 0, -10])
|
|
cube([w_flange + 0.2, h_flange + 0.2, 10]);
|
|
}
|