Generator for Thingiverse Thing 2980535
- OS
- Windows 7 or greater
- MacOS (tested with python3 installed via homebrew)
- Linux may work but untested
python 3.5
or greater with:- numpy
- pillow
openscad 2015.03-2
or later- stl repair tool (I used netfab)
Install the above software before first use and edit the path in the python code to match your setup. Make sure to install the python libs!
- If OpenSCAD is in a nonstandard location, adjust path at top of
main.py
(folders for output and preview created when run) - (optional) Adjust the
bs
(lid sides) value inmake shells.scad
for a new look if you like - (optional) Adjust values in
opt.ini
as you see fit - (optional) Make a backup of
opt.ini
so you can reuse these values in the future - Open a python shell and run
main.py
(you may be able to just double click it)- You will be prompted whether to use multi-threadding (if available) then nub count, a difficulty level and a shift mode value.
- Shifting is where each row of the maze is shifted and wrapped for the illusion of a bigger maze.
- For shift mode 3, also input how much. It will be constrained by modulus, so large nums will not break it.
- Stl files go in the
stl_files
folder and previews in themaze_previews
folder.
- The stl files may need repair. Use a repair tool.
- It is recomended to view all stl files to check that they will work.
- Print a 2-part test print at 0.2mm layers. If they fit, print the rest.
- Read
opt.ini
, it has important info about the options. - Put all these files in a project folder.
- If using Windows, use the multi-thread openscad version: 32 bit Or 64 bit.
- Preview the mazes in the
maze_previews
folder. If using transition point, the one ending with "a" is of the same shell as without the "a".
- Be patient: It may take a while to run the openscad scripts.
m=0.3
(tolerance
inopt.ini
) for 0.4mm nozzle worked well for me with ABS. PLA or PETG recomended as some shells can be large, nubs rub off easier with "soft" materials, and cheating can be possible with "flexible" materials.- Editing during the run may not be possible.
- Openscad scripts run via shell in the python code. This speeds the process of stl export as this limits having to switch between apps.
- To make another or to adjust values, you will need to restart from step 2 as some parts may no longer fit.