From 4ba7cb970eea191e598cd4672aef536d83549e4d Mon Sep 17 00:00:00 2001 From: Steve Cross Date: Tue, 28 Dec 2021 10:38:12 -0500 Subject: [PATCH] Add missing overhang to slide plate for better clamping ability --- Vixen Dovetail/vixen_dovetail_plate.scad | 26 ++++++++++++++++-------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/Vixen Dovetail/vixen_dovetail_plate.scad b/Vixen Dovetail/vixen_dovetail_plate.scad index 8eeffbf..03e98bc 100644 --- a/Vixen Dovetail/vixen_dovetail_plate.scad +++ b/Vixen Dovetail/vixen_dovetail_plate.scad @@ -83,6 +83,8 @@ $fn = 360; show_dovetail = false; rotate_final = true; +include_base = false; +include_slide_plate = true; clamp_angular_width = calculate_vixen_angular_offset(clamp_height, channel_angle); @@ -103,12 +105,17 @@ if (rotate_final == false) { color("red") build_slide_plate(); color("green") show_dovetail_bar(); } else { - rotate([90, 0, 0]) - color("LightSkyBlue") build_base_plate(); + + if (include_base == true) { + rotate([90, 0, 0]) + color("LightSkyBlue") build_base_plate(); + } - translate([0, -30, base_width]) - rotate([90, 90, 0]) - color("red") build_slide_plate(); + if (include_slide_plate == true) { + translate([0, -30, base_width+clamp_travel_overlap]) + rotate([90, 90, 0]) + color("red") build_slide_plate(); + } } module show_dovetail_bar() { @@ -124,8 +131,9 @@ module build_slide_plate() { difference() { union() { difference() { + // main plate translate([slide_plate_offset_x, 0, base_thickness+kerf_margin]) - cube([slide_plate_width, base_length, slide_plate_height]); + cube([slide_plate_width+clamp_travel_overlap, base_length, slide_plate_height]); translate([clamp_thickness, -1, base_thickness]) make_base_vixen_dovetail_bar(base_length+2); @@ -135,7 +143,7 @@ module build_slide_plate() { slide_plate_guide_offset_x = slide_brace_offset_x + clamp_thickness + clamp_travel_overlap; - slide_plate_guide_length = base_width - slide_plate_guide_offset_x; + slide_plate_guide_length = base_width - slide_plate_guide_offset_x + clamp_travel_overlap; slide_plate_guide_radius = get_radius_from_apothem(slide_slot_depth-kerf_margin); @@ -149,12 +157,12 @@ module build_slide_plate() { // bottom slide bolt hole translate([slide_plate_offset_x-1, slide_slot_offset_y1, base_thickness]) rotate([90, 0, 90]) - cylinder(slide_plate_width+2, d=slide_bolt_shaft_diameter); + cylinder(slide_plate_width+2+clamp_travel_overlap, d=slide_bolt_shaft_diameter); // bottom slide bolt hole translate([slide_plate_offset_x-1, slide_slot_offset_y2, base_thickness]) rotate([90, 0, 90]) - cylinder(slide_plate_width+2, d=slide_bolt_shaft_diameter); + cylinder(slide_plate_width+2+clamp_travel_overlap, d=slide_bolt_shaft_diameter); } }