2016 Volume 24 Issue 6 Pages 908-916
When manufacturing or 3D-printing a product using a computer, a program that procedurally controls manufacturing machines or 3D printers is required. G-code is widely used for this purpose. G-code was developed for controlling subtractive manufacturing (cutting work), and designers have historically written programs in G-code, but, in recently developed environments, the designer describes a declarative model by using computer-aided design (CAD), and the computer converts it to a G-code program. However, because the process of additive manufacturing, of which FDM-type 3D-printing is a prominent example, is more intuitive than subtractive manufacturing, it is sometimes advantageous for the designer to describe an abstract procedural program for this purpose. This paper therefore proposes a method for generating G-code by describing a Python program using a library for procedural 3D design and for printing by a 3D printer, and it presents use cases. Although shapes printable by the method are restricted, this method can eliminate layers and layer seams as well as support, which is necessary for conventional methods when an overhang exists, and it enables seamless and aesthetic printing.