Object Partitioning for Support-Free 3D-PrintingEG 2019

Eli Karasik    Raanan Fattal    Michael Werman

Hebrew University of Jerusalem

3D Prints - with supports and with the new method
An object requiring support when printed by an FDM printer. Two left images show the object with support structures and after their removal by a craft knife. Removal marks are clearly seen despite the elaborate effort put. Partitioning the object by a single plane of a precise location and angle results in two printable subparts.

Abstract

Fused deposition modeling based 3D-printing is becoming increasingly popular due to it's low-cost and simple operation and maintenance. While it produces rugged prints made from a wide range of materials, it suffers from an inherent printing limitation where it cannot produce overhanging surfaces of non-trivial size. This limitation can be handled by constructing temporary support-structures, however this solution involves additional material costs, longer print time, and often a fair amount of labor in removing it.

In this paper we present a new method for partitioning general solid objects into a small number of parts that can be printed with no support. The partitioning is computed by applying a sequence of cutting-planes that split the object recursively. Unlike existing algorithms, the planes are not chosen at random, rather they are derived from shape analysis routines that identify and resolve various commonly-found geometric configurations. In addition, we guide this search by a revised set of conditions that both ensure the objects' printability as well as realistically model the printing capabilities of the printer at hand.

Evaluation of the new method demonstrates its ability to efficiently obtain support-free partitionings typically containing fewer parts compared to existing methods that rely on support-structures.

Downloads

BibTeX

@article {Kar19,
author = {Karasik, Eli and Fattal, Raanan and Werman, Michael},
title = {Object Partitioning for Support-Free 3D-Printing},
journal = {Computer Graphics Forum},
year = {2019},
volume = {38},
number = {2},
}