Renamed character_retainer_ring.scad to external_parts.scad

This commit is contained in:
2026-01-21 11:07:12 +01:00
parent 8d6c811998
commit a02bc5685a

View File

@@ -0,0 +1,76 @@
// The support the character is inserted in when playing a story.
// Mounted on the shell with two screws.
// To be printed in clear plastic because it receives the light from the RGB led.
// Indents at height 4
module retainer_spring() {
rotate_extrude(convexity = 10, angle = 90, $fn = 128)
translate([22, 0, 0])
square([2, 10]);
}
module character_retainer_ring() {
$fn = 128;
screw_hole_diameter = 2;
difference() {
// Body
cylinder(d = 59.5, h = 6);
cylinder(d = 40.5, h = 20, center = true);
// Screw holes
translate([0, -25, 0]) cylinder(d = screw_hole_diameter, h = 6, center = true);
rotate([0, 0, 120]) translate([0, -25, 0]) cylinder(d = screw_hole_diameter, h = 6, center = true);
rotate([0, 0, 240]) translate([0, -25, 0]) cylinder(d = screw_hole_diameter, h = 6, center = true);
// Retainer springs
rotate([0, 0, 45]) retainer_spring();
rotate([0, 0, 165]) retainer_spring();
rotate([0, 0, 285]) retainer_spring();
}
// Retainer bumps
rotate([0, 0, -30]) translate ([20.25, 0, 4]) sphere(d = 2);
rotate([0, 0, 90]) translate ([20.25, 0, 4]) sphere(d = 2);
rotate([0, 0, 210]) translate ([20.25, 0, 4]) sphere(d = 2);
}
module status_led_diffuser() {
$fn = 32;
// Diffuser
hull() {
translate([0, -13, 0]) cylinder(d = 10, h = 13);
translate([15, 13, 0]) cylinder(d = 10, h = 13);
translate([-15, 13, 0]) cylinder(d = 10, h = 13);
}
difference() {
// Flange
cube([50, 40, 2], true);
// Mounting holes
translate([-18, -5, 0]) cylinder(d = 3, h = 3, center = true);
translate([18, -5, 0]) cylinder(d = 3, h = 3, center = true);
}
}
module sdcard_access_port() {
$fn = 32;
difference() {
union() {
translate([-12, -7.5, 0]) cube([24, 15, 8]);
// Flange
hull() {
translate([15, 0, 0]) cylinder(d = 20, h = 2);
translate([-15, 0, 0]) cylinder(d = 20, h = 2);
}
// Text
translate([6, -3, -0.9]) linear_extrude(height = 1) rotate([0, 180, 0]) text("SD", size = 6);
}
// Mounting holes
translate([16, 0, -1]) cylinder(d = 3, h = 10);
translate([-16, 0, -1]) cylinder(d = 3, h = 10);
}
}
//retainer_spring();
character_retainer_ring();
//status_led_diffuser();
//sdcard_access_port();