diff --git a/3D_Models/Holder.scad b/3D_Models/Holder.scad --- a/3D_Models/Holder.scad +++ b/3D_Models/Holder.scad @@ -13,15 +13,9 @@ ring_12_inner_diameter = 23.3; ring_thickness = 6.7; ring_z_offset = neopixel_holder_thickness - ring_thickness; -channel_length = (ring_12_outer_diameter - ring_12_inner_diameter); -channel_position = (-ring_12_outer_diameter - ring_12_inner_diameter)/2; +channel_length = overall_outer_diameter-3; -cable_channel_width = (overall_outer_diameter/2 - ring_24_outer_diameter/2)/2; -cable_channel_position = (-overall_outer_diameter/2) + cable_channel_width; - -alignment_pin_diameter = 2.5; -alignment_pin_height = neopixel_holder_thickness - 2.5; -alignment_pin_position = (-overall_outer_diameter/2) + alignment_pin_diameter; +alignment_pin_position = (-overall_outer_diameter/2) + 1.5; $fn = 200; @@ -33,22 +27,11 @@ module ring(h, od, id) { }; module channel() { - translate([channel_position, -1.25, ring_z_offset]) - cube([channel_length, 2.5, ring_thickness+1]); - - mirror([1, 0, 0]) - translate([channel_position, -1.25, ring_z_offset]) - cube([channel_length, 2.5, ring_thickness+1]); - - translate([cable_channel_position, 0, -1]) - cylinder(h=neopixel_holder_thickness+2, d=2.5); - - translate([cable_channel_position, -1.25, ring_z_offset]) - cube([cable_channel_width+0.1, 2.5, ring_thickness+0.1]); + translate([-(channel_length/2), -2, ring_z_offset]) cube([channel_length, 4, ring_thickness+1]); + translate([0, 0, -1]) cylinder(h=neopixel_holder_thickness+2, d=10); }; module neopixel_holder() { - alignment_pin_z_position = neopixel_holder_thickness - alignment_pin_height; difference () { @@ -60,27 +43,30 @@ module neopixel_holder() { channel(); - translate([-alignment_pin_position, 0, alignment_pin_z_position]) - cylinder(h=alignment_pin_height+0.1, d=alignment_pin_diameter); - - for (y=[alignment_pin_position, -alignment_pin_position]) - translate([0, y, alignment_pin_z_position]) - cylinder(h=alignment_pin_height+0.1, d=alignment_pin_diameter); + for (y=[0, 1]) + mirror([0, y, 0]) + mirror([1, 1, 0]) + translate([alignment_pin_position, -2, ring_z_offset]) + cube([5, 4, ring_thickness+1]); + }; }; module translucent_disk() { - alignment_pin_diameter_l = alignment_pin_diameter - 0.1; cylinder(h=translucent_disk_thickness, d=overall_outer_diameter); - - translate([-alignment_pin_position, 0, translucent_disk_thickness]) - cylinder(h=alignment_pin_height, d=alignment_pin_diameter_l); - - for (y=[alignment_pin_position, -cable_channel_position]) - translate([0, y, translucent_disk_thickness]) - cylinder(h=alignment_pin_height, d=alignment_pin_diameter_l); + + + for (y=[0, 1]) + mirror([0, y, 0]) + mirror([1, 1, 0]) + translate([alignment_pin_position, -(4-0.2)/2, translucent_disk_thickness]) + cube([3, 4-0.2, neopixel_holder_thickness -ring_z_offset]); + for (x=[0, 1]) + mirror([x, 0, 0]) + translate([alignment_pin_position, -(4-0.2)/2, translucent_disk_thickness]) + cube([3, 4-0.2, neopixel_holder_thickness -ring_z_offset]); }; translate([-(overall_outer_diameter/2+1), 0, 0]) neopixel_holder(); -translate([(overall_outer_diameter/2+1), 0, 0]) rotate([180, 180, 0]) translucent_disk(); \ No newline at end of file +translate([(overall_outer_diameter/2+1), 0, 0]) translucent_disk(); \ No newline at end of file