/************** BEST VIEWED IN A CODE EDITOR 80 COLUMNS WIDE ******************* * Dewalt Small Bulk Storage Case * Benjamen Johnson * 20200128 * Version 1 * openSCAD Version: 2019.05 *******************************************************************************/ /*[Edit me!]*/ // position of first divider in mm from the left wall (33 is center) divider1_pos = 33;//[17:50] // position of second divider in mm from the left wall divider2_pos = 33;//[17:50] // How thick do you want the bottom bottom_thickness = 0.6; // How thick is the divider wall(s)? wall_thickness = 2; /*[Advanced]*/ /******************************************************************************* * Points that define the shape of the bottom of the case * * |<---------- L ---------->| * -- --------------------- * | / \ -BC * | | | * | | | * | | | * W | | * | | NI | * | | | | * | = NW = -- * | \ / | * | \ ------------ / N * -- --- --- -- * |FE | * FC FI * *******************************************************************************/ // Total length (x-axis) L = 66.5; // Total width (y-axis) W = 58.5; // Front corner pos (x-axis) FC = 6; // Front edge length (x-axis) FE = 10.25; // Front_indent (y-axis) FI = 4; // Notch position (y-axis) N = 13; // Notch indent (x-axis) NI = 5; // Notch width (y-axis) NW = 7; // Back chamfer (x and y axis) BC = 5; // back chamfer // How deep is the case from lid to bottom depth = 12; // Notch out top of divider for top top_notch_depth = 1.8; // Notch out top of divider for top top_notch_width = 7.5; // add a little bit to cuts to improve rendering render_offset = 0.01; // define the shape of the bottom of the case dewalt_bulk_storage = [[FC,0],[FC+FE,0],[FC+FE,FI],[L-FC-FE,FI],[L-FC-FE,0],[L-FC,0], [L,11],[L,N],[L-NI,N],[L-NI,N+NW],[L,N+NW],[L,W-BC], [L-BC,W],[0+BC,W], [0,W-BC],[0,N+NW],[NI,N+NW],[NI,N],[0,N],[0,11]]; /******************************************************************************* * Let's do it *******************************************************************************/ difference(){ union(){ //create bottom plate translate([-L/2,-W/2]) linear_extrude(height = bottom_thickness,convexity=10)polygon(dewalt_bulk_storage); // create divider translate([-L/2+divider1_pos,FI/2,depth/2])cube([wall_thickness,W-FI,depth],center=true); // create 2nd divider translate([-L/2+divider2_pos,FI/2,depth/2])cube([wall_thickness,W-FI,depth],center=true); }// end union //create notch translate([0,-(W-top_notch_width)/2+FI,depth-1.8/2])cube([L,top_notch_width+render_offset,top_notch_depth+render_offset],center=true); } // end difference