I wrote several articles on the "fluctuated 3D printing", i.e., in my blog (in Japanese), a paper (a journal version and a workshop version). However, because the programs used for these articles were not well-structured, they were not published. Because I developed a simplified and well-structured version, it is published here.
By executing this program, which is in public domain, a G-code file is generated. By sending it to a 3D printer, fluctuated 3D print patterns (or natural-design patterns) can be generated. Every time the printer prints a different pattern. This program is for Rostock MAX, so the program may have to be slightly updated for other 3D printers.
The usage of the program is, for example, as follows. (The version of Python can be 2 or 3.)
python naturalDesign.py PLA 0.15 0.05
For the above command, a PLA filament is to be used and the print pitch (layer pitch), 0.5 mm, and the average cross section of the filament, 0.05 mm2, are specified in the program. ABS can be used instead of PLA. More detailed parameters can be specified as follows.
python naturalDesign.py ABS 0.2 0.05 180 4800 120
Here, except the print pitch 0.2 and the cross section 0.05, the number of divisions of a circle is specified as 180 (i.e., it is approximated by 180 lines), head motion speed 4800 mm/min, number of repetitions in the spiral 120 are specified. These are default values, so they can be omitted. (The parameters in between specified parameters cannot be omitted.)
Note that I have not written any patents or similar intellectual properties on this issue because fluctuated 3D printing is caused by nature.