$fn = 64; // --- PARAMETERS --- // Sticky Note Pad Dimensions (Standard 3x3 inch pad is ~76.2mm) pad_width = 78; // Clearance included pad_height = 78; // Clearance included pad_thickness = 12; // Holds a standard ~10mm stack // Holder Settings wall_thickness = 2; front_cutout_radius = 30; // HSW (Honeycomb Storage Wall) Peg Settings hex_flat_to_flat = 19.6; // 20mm standard, slightly undersized for clearance hex_radius = hex_flat_to_flat / sqrt(3); hex_depth = 8; hex_pitch = 40.88; // Standard HSW horizontal hole spacing // Calculated Outer Dimensions outer_w = pad_width + (wall_thickness * 2); outer_h = pad_height + (wall_thickness * 2); outer_d = pad_thickness + (wall_thickness * 2); // --- MODEL --- union() { // Main Holder Body translate([0, 0, outer_d / 2]) difference() { // Outer shell cube([outer_w, outer_h, outer_d], center=true); // Inner pocket // Shifted in Y to leave a solid bottom wall and cut completely through the top translate([0, wall_thickness, 0]) cube([pad_width, outer_h, pad_thickness], center=true); // Front thumb cutout for easy grabbing // Starts at Z=0 (middle of pad) and cuts through the front wall (+Z) translate([0, outer_h / 2, 0]) cylinder(r=front_cutout_radius, h=outer_d); } // Left HSW Peg // Translated slightly into the back wall (+0.1 Z) to ensure a manifold union translate([-hex_pitch / 2, 0, 0.1]) rotate([0, 180, 0]) cylinder(r=hex_radius, h=hex_depth + 0.1, $fn=6); // Right HSW Peg translate([hex_pitch / 2, 0, 0.1]) rotate([0, 180, 0]) cylinder(r=hex_radius, h=hex_depth + 0.1, $fn=6); }