Gašper Drolc (2018) Decomposition of 3D model for 3D printing. EngD thesis.
Abstract
Typical consumer level 3D printers have a limited build volume, so 3D models that are too big need to be divided into several smaller pieces that can be printed separately. The goal of this thesis is to develop a program for cutting 3D models into several smaller segments. The idea is to find a simple yet effective solution which is built with suitable algorithmic solutions. A 3D model is typically defined with a set of triangles that describe its surface. Cutting a 3D model is performed in several different steps. We begin by developing a procedure for cutting the existing triangles, and use them to construct polygons by connecting the edges. To support triangulation of polygons with holes we implemented an algorithm for sorting polygons into a hierarchical tree and an algorithm for merging polygons with its holes. Next we implemented an Ear clipping algorithm for polygon triangulation. The program was developed in the Python programming language with a command line interface. After presenting how our solution works we performed measurements and an analysis of time complexity for the separate steps. The anaylsis showed that the polygon triangulation is the most time consuming step in the program, and that the execution of triangulation using Ear clipping rises exponentialy wih the resolution of the 3D model. Nevertheless the solution performs well if the 3D model is of moderate complexity.
Actions (login required)