$fn = 64; // --- Parameters --- bracket_width = 32; shelf_depth = 32; wall_thickness = 5; brace_thickness = 10; total_height = 80; shelf_z = 60; // FigureStage Grid Parameters grid_spacing = 8; peg_dia = 4.8; peg_height = 2; // Mounting Hardware screw_dia = 4.5; screw_head_dia = 8.5; screw_head_depth = 3; module floating_shelf_bracket() { difference() { union() { // Wall mounting plate cube([bracket_width, wall_thickness, total_height]); // Horizontal shelf platform translate([0, wall_thickness - 0.1, shelf_z - wall_thickness]) cube([bracket_width, shelf_depth + 0.1, wall_thickness]); // Angled support brace hull() { translate([bracket_width/2 - brace_thickness/2, wall_thickness - 0.1, shelf_z - wall_thickness]) cube([brace_thickness, shelf_depth + 0.1, 0.1]); translate([bracket_width/2 - brace_thickness/2, wall_thickness - 0.1, 20]) cube([brace_thickness, 0.1, 0.1]); } // Baseplate integration pegs (4x4 grid) for (i = [0:3], j = [0:3]) { translate([ 4 + i * grid_spacing, wall_thickness + 4 + j * grid_spacing, shelf_z - 0.1 ]) cylinder(d=peg_dia, h=peg_height + 0.1); } } // Top mounting hole translate([bracket_width/2, wall_thickness + 0.1, total_height - 10]) rotate([90, 0, 0]) { cylinder(d=screw_dia, h=wall_thickness + 0.2); cylinder(d1=screw_head_dia, d2=screw_dia, h=screw_head_depth); } // Bottom mounting hole translate([bracket_width/2, wall_thickness + 0.1, 10]) rotate([90, 0, 0]) { cylinder(d=screw_dia, h=wall_thickness + 0.2); cylinder(d1=screw_head_dia, d2=screw_dia, h=screw_head_depth); } } } // Render the bracket floating_shelf_bracket();