/* [Main Dimensions] */ // Total length of the horizontal leg (outer dimension) bracket_length = 60; // [20:1:150] // Total height of the vertical leg (outer dimension) bracket_height = 40; // [20:1:150] // Width of the bracket bracket_width = 40; // [10:1:100] // Plate thickness for both legs plate_thickness = 4; // [1:0.5:15] /* [Hole Dimensions & Positions] */ // Diameter of the 4 mounting holes hole_diameter = 6; // [2:0.5:20] // Height from bottom edge to center of vertical leg holes vertical_hole_z = 25; // [5:1:100] // Distance from back outer face to center of horizontal leg holes horizontal_hole_x = 40; // [5:1:150] // Distance from side edge to first hole center hole_offset_y1 = 10; // [2:1:50] // Distance from side edge to second hole center hole_offset_y2 = 30; // [5:1:100] /* [Appearance] */ bracket_color = "SteelBlue"; /* [Quality] */ $fn = 64; module l_bracket() { difference() { // Base L-shape profile union() { // Horizontal base plate cube([bracket_length, bracket_width, plate_thickness]); // Vertical upright plate cube([plate_thickness, bracket_width, bracket_height]); } // Holes in horizontal leg (top-to-bottom through-holes) translate([horizontal_hole_x, hole_offset_y1, -1]) cylinder(h = plate_thickness + 2, d = hole_diameter); translate([horizontal_hole_x, hole_offset_y2, -1]) cylinder(h = plate_thickness + 2, d = hole_diameter); // Holes in vertical leg (front-to-back through-holes) translate([-1, hole_offset_y1, vertical_hole_z]) rotate([0, 90, 0]) cylinder(h = plate_thickness + 2, d = hole_diameter); translate([-1, hole_offset_y2, vertical_hole_z]) rotate([0, 90, 0]) cylinder(h = plate_thickness + 2, d = hole_diameter); } } // Render model color(bracket_color) l_bracket();