This code can be used to easily generate various combinations of holders, bins, trays, supports, with arrays of inserts or plugs on the back.
STLs are provided as examples, most of them have their parameters saved in a JSON file provided, or, in case of the manual_rows_holder
, in the SCAD file itself.
Uses BOSL2 commit:17f0fe8428d0d730505122b128f20ee43d0f8a7c
, and my own remix of Updated library for HSW attachments, which provided in this model (hex plug library.scad
).
Default wall thickness is for 0.4 line width.
Update 2024-09-11:
Add option to remove first row of inserts
Update 2024-06-11:
Add insert_tolerance
, insert_inner_tolerance
variables.
Update 2023-12-17:
Add a steps mode for simple_holder
, holder_lon_steps
parameter to enable it, default is false;
Add a front cutout option for cylinder
and rounded_cube
, holder_front_cutout_{w,h,zstart} parameters to control it.
Update 2023-12-16:
Fix some bugs in parametric holder v2.
Update 2023-11-11:
Add lon_start
to holder_fl
calculation, fix rounded_cube
rounding (radius instead of diameter).
Update 2023-11-01, parametric_holder v3:
Use BOSL2 library for rounded_cube
and some math;
Add mount_type
parameter with insert-hollow
, plug
as possible values;
Add mount_horiz_density
parameter;
In holder_rows_list
, “rounded_cube"
: Move number of sides to the 7th place, add edges to round as the 8th element, and update the description.
Update 2023-10-28:
Add a format description of holder_row_list
parameter, with a TODO trapezoid
example. I will probably use BOSL2
for that one and rounded_cube
in the next update.
Update 2023-10-21:
Add holder_type
variable, current values are simple
, manual_rows
.
Add manual_rows_holder
module, which takes holder_rows_list
and calculates its outer dimensions from that list, using the widest row and a spacing for each row, or the longest element in each row if spacing is zero. Rows are centered or left-aligned based on holder_rows_centered
variable;
Add a 3 row holder for drill bits;
Add a holder for 16mm lathe tools.
Update 2023-10-10:
Add holder_rot_ang
variable to rotate holder on X axis;
Add a holder for 100mm chuck jaws (33x16x4), update the presets file;
Update some defaults and Customizer annotations.
The author marked this model as their own original creation.