cfobel / storage-boxes

A CadQuery fork of the awesome assortment boxes by Alexandre Chappel.
MIT License
0 stars 1 forks source link

storage-boxes

A CadQuery fork of the awesome assortment boxes (video here) by Alexandre Chappel.

If you find these boxes useful, please consider supporting Alexandre Chappel by purchasing the original digital download of the box design here.

Example 2x4 box

Example 4x4 tray

No bottom chamfer Chamfered bottom edges
Filled between outer edges and adjacent upper chamfers; and between pairs of upper chamfers. Might be easiest for gluing to surface due to larger surface area. This variant reduces filament and print time.

Install

git clone 
cd ...
conda env create -n cadquery-boxes --file environment.yml 
conda activate cadquery-boxes

Usage

See below for CLI tool usage example. Note that you can customize the unit size and the box height using the respective CLI flags. All box sizes from 1x1 to 4x4 have been prebuilt along with the corresponding tray frames and are available as GitHub release v0.1.

> cd src
> python -m storage_boxes.models --help
Usage: models.py [OPTIONS] OUTPUT_DIR

Arguments:
  OUTPUT_DIR  [required]

Options:
  --unit-extent FLOAT
  --height FLOAT
  --install-completion  Install completion for the current shell.
  --show-completion     Show completion for the current shell, to copy it or
                        customize the installation.

  --help                Show this message and exit.
> # Write all box sizes and base frames from 1x1 to 4x4 to specified output directory.
> python -m storage_boxes.models <output_dir>

Development

Install the jupyter-cadquery Jupyter Lab extension

# See https://github.com/bernhard-42/jupyter-cadquery#installation
wget -O jupyter-cadquery-environment.yml https://raw.githubusercontent.com/bernhard-42/jupyter-cadquery/v2.0.0-beta3/environment.yml
wget https://raw.githubusercontent.com/bernhard-42/jupyter-cadquery/v2.0.0-beta3/labextensions.txt
conda env update -n cadquery-boxes --file jupyter-cadquery-environment.yml 
jupyter-labextension install --no-build $(cat labextensions.txt)
jupyter lab build --dev-build=False --minimize=False
jupyter lab

Notes

The interesting bits of code:

License

Licensed under the MIT license.