<td>bin height. See bin height information and "gridz_define" below.</td>
</tr>
<tr>
<td>length</td>
<td>{ n>0 | n∈R }</td>
<td>length of one unit of the base. <br> default: 42 (The Answer to the Ultimate Question of Life, <br>the Universe, and Everything.)</td>
</tr>
<tr>
<td>divx</td>
<td>{ n>0 | n∈Z }</td>
<td>number of compartments along X</td>
</tr>
<tr>
<td>divy</td>
<td>{ n>0 | n∈Z }</td>
<td>number of compartments along Y</td>
</tr>
<tr>
<td>enable_scoop</td>
<td>boolean</td>
<td>toggles the fillet on bottom edge for easy removal of items</td>
</tr>
<tr>
<td>enable_zsnap</td>
<td>boolean</td>
<td>automatically snap the bin size to the nearest 7mm increment. <br> default: true</td>
</tr>
<tr>
<td>enable_lip</td>
<td>boolean</td>
<td>if you are not stacking the bin, you can disable the top lip <br> to save space. default: true</td>
</tr>
<tr>
<td>gridz_define</td>
<td>{ n>0 | n∈R }</td>
<td>determine what the variable "gridz" applies to based on <br> your use case. default: 0. <br> • (0) gridz is the height in # of 7mm increments (Zack) <br> • (1) gridz is the internal height in millimeters <br> • (2) gridz is the overall external height of the bin in millimeters</td>
</tr>
<tr>
<td>height_internal</td>
<td>{ n>0 | n∈R }</td>
<td>height of the internal block. <br> Can be lower than bin height to save filament on custom bins. <br> default of 0 means use the calculated height.</td>
</tr>
<tr>
<td>style_tab</td>
<td>{ 0, 1, 2, 3, 4, 5 }</td>
<td>how the tabs for labels are generated. <br> • (0) Full tabs across the entire compartment <br> • (1) automatic tabs <br> - left aligned tabs on the left edge<br> - right aligned tabs on right edge<br> - center tabs otherwise <br> • (2) left aligned tabs <br> • (3) center aligned tabs <br> • (4) right aligned tabs <br> • (5) no tabs</td>
</tr>
<tr>
<td>style_hole</td>
<td>{ 0, 1, 2, 3 }</td>
<td>the style of holes in the bases <br> • (0) No holes <br> • (1) Magnet holes only <br> • (2) Magnet and screw holes - no printable slit <br> • (3) Magnet and screw holes - with printable slit</td>
</tr>
<tr>
<td>div_base_x</td>
<td>{ n>=0 | n∈Z }</td>
<td>number of divisions per 1 unit of base along the X axis. <br>(default 1, only use integers. <br>0 means automatically guess the division)</td>
</tr>
<tr>
<td>div_base_y</td>
<td>{ n>=0 | n∈Z }</td>
<td>number of divisions per 1 unit of base along the Y axis. <br>(default 1, only use integers. <br>0 means automatically guess the division)</td>
<p>Initializes the top part of the bin (walls and solid section). All bins have to use this module, and have the compartments cut out from it. </p>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Range</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>gridx</td>
<td>{ n>0 | n∈R }</td>
<td>number of bases along the x-axis</td>
</tr>
<tr>
<td>gridy</td>
<td>{ n>0 | n∈R }</td>
<td>number of bases along the y-axis</td>
</tr>
<tr>
<td>height</td>
<td>{ n>0 | n∈R }</td>
<td>height of the bin, in millimeters (but not exactly). <br> See the <code>height()</code> function for more info.</td>
</tr>
<tr>
<td>height_internal</td>
<td>{ n>0 | n∈R }</td>
<td>height of the internal block. <br> Can be lower than bin height to save filament on custom bins. <br> default of 0 means use the calculated height.</td>
<td>determine what the variable "gridz" applies to based on <br> your use case. default: 0. <br> • (0) gridz is the height in # of 7mm increments (Zack) <br> • (1) gridz is the internal height in millimeters <br> • (2) gridz is the overall external height of the bin in millimeters</td>
<p>Generates the bases for bins. Has various different hole styles, and can be subdivided.</p>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Range</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>gridx</td>
<td>{ n>0 | n∈R }</td>
<td>number of bases along the x-axis</td>
</tr>
<tr>
<td>gridy</td>
<td>{ n>0 | n∈R }</td>
<td>number of bases along the y-axis</td>
</tr>
<tr>
<td>length</td>
<td>{ n>0 | n∈R }</td>
<td>length of one unit of the base. default: 42</td>
</tr>
<tr>
<td>div_base_x</td>
<td>{ n>=0 | n∈Z }</td>
<td>number of divisions per 1 unit of base along the X axis. <br>(default 1, only use integers. 0 means automatically guess the division)</td>
</tr>
<tr>
<td>div_base_y</td>
<td>{ n>=0 | n∈Z }</td>
<td>number of divisions per 1 unit of base along the Y axis. <br>(default 1, only use integers. 0 means automatically guess the division)</td>
</tr>
<tr>
<td>style_hole</td>
<td>{ 0, 1, 2, 3 }</td>
<td>the style of holes in the bases <br> • (0) No holes <br> • (1) Magnet holes only <br> • (2) Magnet and screw holes - no printable slit <br> • (3) Magnet and screw holes - with printable slit</td>
</tr>
</tbody>
</table>
<pre><code>// Example: generate a 3x3 base with a 42mm unit size and clean magnet holes
<td>how the tabs for labels are generated. <br> • (0) Full tabs across the entire compartment <br> • (1) automatic tabs <br> - left aligned tabs on the left edge<br> - right aligned tabs on right edge<br> - center tabs otherwise <br> • (2) left aligned tabs <br> • (3) center aligned tabs <br> • (4) right aligned tabs <br> • (5) no tabs</td>
<p>Cuts a single compartment into the bin at the provided location with the provided attributes. The coordinate system for compartments originates (0,0) at the bottom left corner of the bin, where 1 unit is the length of 1 base. Positive X and positive Y are in the same direction as the global coordinate system.</p>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Range</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>x</td>
<td>{ n>=0 | n∈R }</td>
<td>X coordinate of the compartment <br>(position of left edge of compartment)</td>
</tr>
<tr>
<td>y</td>
<td>{ n>=0 | n∈R }</td>
<td>Y coordinate of the compartment <br>(position of bottom edge of compartment)</td>
</tr>
<tr>
<td>w</td>
<td>{ n>0 | n∈R }</td>
<td>Width of the compartment, in base units <br>(1 unit = 1 <code>length</code>)</td>
</tr>
<tr>
<td>h</td>
<td>{ n>0 | n∈R }</td>
<td>Height of the compartment, in base units <br>(1 unit = 1 <code>length</code>)</td>
<td>how the tabs for labels are generated for this compartment. <br> • (0) Full tabs across the entire compartment <br> • (1) automatic tabs <br> - left aligned tabs on the left edge<br> - right aligned tabs on right edge<br> - center tabs otherwise <br> • (2) left aligned tabs <br> • (3) center aligned tabs <br> • (4) right aligned tabs <br> • (5) no tabs</td>
<p>Moves all of its children from the global origin to the center of the area that a compartment would normally fill, and uses them to cut from the bin. This allows you to easily make custom cutouts in the bin.</p>
<table>
<thead>
<tr>
<th>Parameter</th>
<th>Range</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>x</td>
<td>{ n>=0 | n∈R }</td>
<td>X coordinate of the area (position of left edge)</td>
</tr>
<tr>
<td>y</td>
<td>{ n>=0 | n∈R }</td>
<td>Y coordinate of the area (position of bottom edge)</td>
</tr>
<tr>
<td>w</td>
<td>{ n>0 | n∈R }</td>
<td>Width of the area, in base units (1 unit = 1 <code>length</code>)</td>
</tr>
<tr>
<td>h</td>
<td>{ n>0 | n∈R }</td>
<td>Height of the area, in base units (1 unit = 1 <code>length</code>)</td>
</tr>
</tbody>
</table>
<pre><code>// Example:
// cuts a cylindrical hole of radius 5
// hole center is located 1/2 units from the right edge of the bin, and 1 unit from the top
Built with <ahref="https://www.mkdocs.org/">MkDocs</a> using a <ahref="https://github.com/readthedocs/sphinx_rtd_theme">theme</a> provided by <ahref="https://readthedocs.org">Read the Docs</a>.