Add ring light adapter

This commit is contained in:
Kienan Stewart 2025-08-17 20:53:15 -04:00
parent e3fd19e582
commit 42a18fac4a
1 changed files with 111 additions and 0 deletions

111
ring light adapter.scad Normal file
View File

@ -0,0 +1,111 @@
module wing() {
polyhedron(
points = [
[-1, -1, 0],
[-1, 1, 0],
[-1, 0, 6],
[31, 0, 0],
],
faces = [
[1, 0, 3], // bottom
[0, 2, 3], // left
[0, 1, 2], // back
[3, 2, 1], // right
]
);
};
// screw bump 13mm long, 7mm high, round top and sides (triangle like rather than cylindrical)
module bump() {
linear_extrude(height=7) {
hull() {
translate([0,-5,0]) {
circle(4, $fn=100);
};
translate([13/2, -9, 0]) {
circle(.1, $fn=50);
};
translate([-13/2, -9, 0]) {
circle(.1, $fn=50);
};
};
};
};
module thing() {
union() {
// 13mm x40mm long cylinder
translate([0, 0, 15]) {
cylinder(40, 13/2, 13/2, $fn=360);
};
// cone, 17mm top, 21mm base, 15mm tall
translate([0, 0, 0]) {
cylinder(15, 21/2, 17/2, $fn=360);
};
// 2x long wings, 31mm x 2mm starting at 6mm tall and ending at 0 at 90 degree offset from key
translate([21/2, 0, 0]) {
wing();
};
mirror([1, 0, 0]) {
translate([21/2, 0, 0]) {
wing();
};
};
// key top is 15mm tall 10mm protrusion for edge of cone top angling down to 0mm at an offset of 16mm from cone bottom, 4mm wide
translate([-2, 8, 0]) {
cube([4, 11, 15], center=false);
};
translate([0, 19, 0]) {
polyhedron(points=[
[-2, 0, 0],
[2, 0, 0],
[-2, 0, 15],
[2, 0, 15],
[-2, 6, 0],
[2, 6, 0],
],
faces = [
[0, 1, 5, 4 ], // bottom
[2, 4, 5, 3], // top
[0, 4, 2], // left
[0, 2, 3, 1], // back
[5, 1, 3], // right
]);
};
translate([0, -8, 9.1]) {
rotate(90, v=[1, 0, 0]) {
bump();
};
};
// screw protrudes by about 2mm from back
// bend top is about 34mm high
};
};
%thing();
difference() {
translate([0, 5, 25/2+0.01]) {
cube([92, 59, 25], center=true);
};
thing();
};
translate([0, 10, 0]) {
difference() {
cube([112, 79, 10], center=true);
cube([92, 59, 10], center=true);
};
};