1 Introduction

Additive manufacturing (AM) is a feasible manufacturing process to produce customized products with complex shapes [1,2,3]. The global AM market was worth USD 12.8 billion at the end of 2020. Despite the pandemic, it expanded of 7.5% during the last year [4]. AM techniques are one of the pillars of Industry 4.0. They are evolving in a wide variety of industrial solutions based on the type of the process, how the final product is obtained and the source of energy that is used for the phase change of the raw material. Machine types are traditionally classified according to the deposition method used to build the parts. Following the international standards [5], AM technologies are divided into seven categories and subcategories based on the specific characteristics of the process [6]. These categories are as follows: binder jetting [7], direct energy deposition (DED) [8,9,10], material extrusion [11], powder bed fusion [12], sheet lamination [13], vat polymerization [14], and material jetting [15].

Traditionally, the deposition direction is unvaried in cartesian/delta 3D printers once the optimal part orientation is defined. However, support structures are often required, especially for complex geometries. Supports lead to material, time, and energy waste [16]. Also, they must be removed during post-processing with potential risk to damage the final product.

AM techniques can be combined with robotic manipulators to extend the manufacturing flexibility of standard cartesian/delta AM. In particular, with robot-based AM (RBAM), multiaxial deposition can be accomplished where the material is deposited along multiple directions thanks to the dexterity of specific hardware solutions with multiple degrees of freedom [17]. In this context, working tables with 1 or 2 degrees of freedom [18] (Fig. 1a), manipulators with 5 or 6 degrees of freedom [19] (Fig. 1b), and combinations of them [20] (Fig. 1c) are implemented in RBAM [21]. In this case, products can be manufactured without the aid of supports, increasing surface finish and mechanical properties and reducing the overall time and the risk to damage the final product.

Fig. 1
figure 1

RBAM hardware solutions. a Working table with 1 degrees of freedom, taken from [18]. b Manipulator with six degrees of freedom, taken from [19]. c Combination of manipulator and working table with 6 and 2 degrees of freedom respectively, taken from [20]

Usually, DED is used in RBAM, where material is deposited from a nozzle onto existing surfaces [22]. The raw material can be wire [23] or powder [24]. Although wire-based DED processes provide a lower resolution than powder-based ones, they have a higher deposition rate and can manufacture larger products [25, 26].

One of the most important metal wire DED technology variants is Wire and Arc Additive Manufacturing (WAAM). It consists of an automized welding process where parts are realized thanks to a welding gun attached to the manipulator and moved according to the generated paths [27, 28] (see Fig. 1b and c). The main characteristics of WAAM are flexibility, low capital investment and low material cost [19, 29]. Similarly, material extrusion, also known as fused deposition modeling (FDM), is widely combined with robotic platforms [30,31,32,33]. In this case, an extruder is mounted on a robot arm to increase the flexibility of the FDM process. The extruder is heated and the melted material is deposited onto a substrate or the previous layer. Robot-based FDM predominantly uses polymer materials and, generally speaking, fewer parameters and simpler equipment are needed than WAAM [34].

Moreover, WAAM and robot-based FDM can be combined with subtractive processes in the same work cell (obtaining the so-called hybrid manufacturing) to overcome important limitations, such as low surface finish and low accuracy of final products [6, 35]. This process is a feasible solution to produce functional parts [36, 37]. However, the geometries as well as the entire manufacturing process must be carefully designed [38].

Despite different types of AM have been proposed and implemented, a common workflow composed of 6 stages can be identified [35], which is reported in Fig. 2.

Fig. 2
figure 2

Main stages of a typical AM and RBAM process

The first steps are mainly concerned with geometric representation and processing and can be identified as geometry modeling and optimization, part orientation or multiaxial deposition, slicing strategy and infill strategy. They are particularly significant in RBAM, where multiaxial deposition can be achieved. In this case, the geometry must be carefully processed to leverage the potentialities of the robotic manipulators while avoiding collisions and printing failures.

With reference to Fig. 3, several approaches can be adopted during each phase of the AM geometry processing, namely: selection of the optimal build direction, selection of the type of slicing, selection of the type of layer and selection of the infill pattern (also generically referred to as path planning). For instance, the build direction is fixed in cartesian/delta AM once the part orientation is optimally defined according to various objectives [39]. Usually, planar, uniform and constant thickness layers are manufactured. Non-planar and non-uniform layers can also be built [40, 41], even though collisions occur between the tool head and the deposited material, especially with concave surfaces. RBAM can overcome such limits, although proper volume decomposition is required followed by the definition of the optimal slicing strategy for each sub-volume. Non-planar layers can be according to the robot architecture and the deposition capability. Also, multiaxial deposition can be performed only through RBAM. Non-planar slicing, non-uniform slicing and volume decomposition are not available in most of commercial slicing software. Therefore, custom software (i.e., tailored solutions) must be developed to achieve satisfactory results.

Fig. 3
figure 3

Outline of geometry processing options for AM technologies. Non-uniform means that the layers are not parallel to each other (in this case, RBAM is recommended)

From these preliminary considerations, some geometrical processing aspects emerge. Many literature reviews cover topics related to AM and RBAM. For example, Leung et al. [42] discussed advanced design features manufacturable mainly with AM, such as lattice structures, multi-materials and graded materials. Jingchao and May [43] described path planning strategies both for AM and RBAM. Jafari et al. [44] conducted a comprehensive review about WAAM, from the implemented technologies to some of the final manufacturing outputs. Pires et al. [45] carried out a review concerning RBAM hardware implementations. Finally, Liu et al. [46] discussed about the performances of WAAM outputs, considering also post-processing phases. At the current state of the art, a comprehensive study covering from the geometric representation of AM and RBAM shapes to their subsequent elaboration (Fig. 2) is missing. Furthermore, the available geometry processing methods have been partially examined and compared in previous researches, and no practical guidelines regarding the applicability of such theories are provided. Hence, this work aims to review and analyze the research progress on this topic. The main contributions of the paper are as follows:

  1. 1.

    It reports a comprehensive background regarding geometry representation and processing methods for AM and RBAM and it summarizes the current open issues and possible future directions.

  2. 2.

    It provides comparative tables to highlight the main characteristics of AM and RBAM issues addressed by the reported methods. These will support designers and AM users during the preliminary phases.

  3. 3.

    It summarizes a workflow that combines processing tools for cartesian/delta AM and RBAM which will guide in the definition of the most efficient procedures.

The review does not examine in depth some other topics related to AM already addressed in previous surveys, such as lattice structures, support structures and hardware implementations. In the following sections, main methods and tools are identified and discussed from an extensive literature analysis.

The remainder of this paper is organized as follows: the review methodology is presented in Section 2. Geometric representation techniques and methods for the geometry processing are reviewed in Sections 3 and 4. Finally, in Section 5, conclusions are drawn and future research directions are outlined.

2 Review work approach

Five research questions have been formulated to perform the review work:

  1. 1.

    What types of geometry representations are adopted in the AM context?

  2. 2.

    How are AM geometries elaborated and processed?

  3. 3.

    What are the algorithms used in the multiaxial deposition approaches?

  4. 4.

    What are the types of slicing for RBAM?

  5. 5.

    What are the types of infill strategies for RBAM?

Based on these questions, six categories have been identified to cover the three steps presented in Fig. 2. The first category is related to general notions of AM. In particular, DED technologies have been mostly explored because they can be integrated with manipulators in RBAM applications. The other categories are geometric representation, part orientation, volume decomposition, multiaxial deposition, slicing types, and infill strategies.

Scopus, Google Scholar, and Web of Science were used to collect the papers included in the review. For each category, different keywords have been used in the databases, as reported in Table 1. The papers were screened based on the title’s relevance and the keywords according to the category. At this level, around 200 papers had been selected. Then, a more in-depth analysis was made by analyzing the abstract. The papers not in line with the topic of the considered category have been discarded. At this point, about 155 papers had been selected and analyzed, see Table 1. Figure 4 summarizes the selected papers after the screening. Some papers belong to more than one category. For example, Zhao et al. [94] present both a volume decomposition algorithm and different types of slicing. In these cases, papers were attributed to the category where they contributed the most. Other papers were then selected from the references of the analyzed documents.

Table 1 Keywords of each category and selected papers
Fig. 4
figure 4

Numbers of papers based on the selected keywords

3 Geometry representation schemas

This section presents the most relevant methods and algorithms for geometry representation for AM and RBAM, according to the presented research approach. Several representations schema are involved in AM geometrical processing [58], namely:

  1. 1.

    Boundary representation (BRep) [59] (Fig. 5a). This representation is specific for solids. In particular, the solid is represented by its boundary, i.e., its skin made of a set of connected faces. This is the most common representation of solid geometries in mechanical CAD systems. Each face is composed of an oriented surface that is delimited by closed loops of edges. More precisely, BRep is made of a geometry layer, i.e., the analytical representation of entities (cartesian points, curves, and surfaces) and a topology layer, i.e., how geometrical entities are connected to each other to form vertices, edges, faces, lumps and solids. Also, these surfaces are oriented, and they delimit a closed space that corresponds to the solid.

  2. 2.

    Space partitioning [60, 61] (Fig. 5b). It describes the interior properties of a volume by partitioning the spatial region containing an object into a set of small, non-overlapping, contiguous solid cells. Usually, cells are tetrahedra or cubes. In the last case, the solid is discretized in a regular three-dimensional voxel grid or in a more resource-efficient octree structure.

  3. 3.

    Tessellated surfaces [6] (Fig. 5c). The solid is represented by its external skin described as a polygonal surface, usually composed of triangles or squares, named as meshes.

  4. 4.

    Parametric surfaces [63] (Fig. 5d). Non-uniform rational B-spline (NURBS) surfaces, parametric surfaces, or subdivision surfaces [173] are used for the analytical description of geometries. NURBS can define lines, circles, arcs, curves and 3D geometries. NURBS geometries are defined with a degree, knots, control points and an evaluation rule. Such patches can be joined together and organized in consistent topological structures to form BReps.

  5. 5.

    Point cloud [172] (Fig. 5e). Point clouds are usually derived from a data acquisition process, also known as reverse engineering. Parts are described by a set of 3D points sampled on the solid surface [171].

  6. 6.

    Function representation (FRep) [71]. It is an implicit representation of the solid. In particular, the solid skin is represented by the locus of points that zeroes a certain function of the space. In particular, geometries are represented as closed subsets of the three-dimensional Euclidean space. Also, several product features can be represented as function.

Fig. 5
figure 5

Solid representation [171]. a BRep. b Space partitioning (voxel) representation. c Tessellated representation. d NURBS representation. e Point cloud representation, adapted from [172]

The presented representations are used according to the specific design process and the adopted elaboration tools. Frequently, conversions among different representations are required during the geometry processing. For instance, regarding the initial part geometry conceiving stage, most engineering CAD software (such as Solidworks, CREO, Inventor, NX and CATIA) are based on geometric kernels which implement the BRep representation. However, alternative approaches to obtain more complex and organic geometries have emerged, based on topology optimization [56] and generative design methods [174, 175].

Topology optimization and generative design are iterative design processes that autonomously generate optimal designs starting from a set of requirements. In particular, topology optimization aims to optimize the material distribution of a preliminary product geometry, proposing a single output. The designer defines the working space, loads, boundary conditions, and constraints as the inputs of the optimization problem [57, 176]. The goal is to maximize the performances of the product, such as the strength-to-weight ratio [2, 177]. On the other hand, generative design software [178, 179] propose a certain number of manufacturable design solutions that meet specific constraints assigned by the designer [180], such as the product material and manufacturing method. Generative design can operate before the conceptual design stage, where the design is still under formulation [181, 182], supporting the study of different unconventional design solutions [179]. Topology optimization and generative design algorithms operate with space partitioning or tessellated representation based on solid discrete elements such as tetrahedra. The resulting shapes are intrinsically characterized by surface irregularities which are usually required to be smoothed and reworked. Therefore, geometries are converted in tessellated formats (i.e., surface meshes) by applying standard approaches, such as the renowned marching cubes algorithm [183].

In the last step, the part is ready to be further processed by slicing software according to the used deposition technology. However, components are usually required to be assembled and to interact with adjacent parts by means of regularly shaped and possibly finely tolerated surfaces. Therefore, planar, cylindrical, as well as conical faces are required to match other components. This goal is accomplished by modeling the part in a standard mechanical design environment, i.e., a BRep-based solid modeler, where standard features such as holes, slots, couplings can be easily designed. Therefore, NURBS surfaces are drawn out of the tessellated geometry by recurring to intermediate section curves and then joint together to form BRep solid schemes. Alternative approaches make use of subdivisions surfaces [173, 184]. Then, the surfaces are converted to NURBS representation due to the scarcity of CAD systems able to natively manage such kinds of representations.

Finally, the geometry is oriented and/or decomposed (volume decomposition), sliced and the tool path of each slice is computed, generating a computer numerical control (CNC) file compatible with the 3D printer. At this stage, a set of printing parameters are established in commercial software (such as Ansys, Netfabb, 3DS, Cura) [185,186,187,188] to optimize the deposition process [2]. Simulation software may be used to simulate the manufacturing distortions due to thermal effects recurring again to finite elements approaches. The aim is to improve the part quality by modifying deposition parameters [185,186,187], expected cooling rate and part orientation. Considering RBAM, an additional step is required, i.e., the generation of robot programs adopting specific programming languages.

Figure 6 reports an example of possible data flow among different geometry representations involved in a product development process for AM [2]. It shows how the design process of a part is based on several geometry processing tools and relies on the quality of the conversion algorithms.

Fig. 6
figure 6

Example of possible geometry conversions in the different stages of a product development process for AM [2]

In the last years, novel RBAM technologies and direct manufacturing [70] have been implemented. Therefore, Fig. 6 may not suitable for all AM applications (see, e.g., [18]). Indeed, multiple representation conversion steps can lead to losses or errors of the geometric information. For this reason, some researchers have investigated alternative workflows to reduce the number of conversions. In particular, Jamison and Hacker [70] have introduced the concept of direct manufacturing, where no intermediate representations between the CAD model and the CNC program are needed. Direct manufacturing can be accomplished by adopting FRep instead of BRep or mesh representation [71]. In particular, geometries that are represented using FRep are formulated in an implicit form as closed subsets of the three-dimensional Euclidean space [69]:

$$H=\left\{p\in U{\subset R}^3\right|\;f\;\left(p\right)\leq c\}$$
(1)

where \(p\) is a point of the object, \(f(p)\) is a real continuous function defined on \({R}^{3}\), \(c\) is a real constant and \(U\) is the domain of \(f\). The following cases are then identified:

$$f\left(p\right)=\left\{\begin{array}{cccc}>c,&if&p&is\;outside\;the\;object\\=c,&if&p&is\;on\;the\;boundary\;of\;the\;object,\\<c,&if&p&\;is\;inside\;the\;object\end{array}\right.$$
(2)

Although BRep and tessellated formats are the most accepted geometric representation, FRep seems very promising in the AM context and is suited for complex topologies. Lattices and organic-like structures are easy to represent with implicit functions, which ensure high levels of flexibility and model accuracy [68]. Also, less storage memory is required than other representations [68]. Li et al. [72] affirm that implicit geometry representation of a product is AM-friendly because implicit shapes are 3D printing ready. Once the function that describes the solid is known, it is possible to step directly to slicing without intermediate representations. Other works adopting FRep as a geometry representation can be found in the literature (see [189,190,191,192,193]).

To simplify the comparison, the main strengths and limitations of the discussed geometry representations are qualitative summarized in Table 2. The first columns report the suitability of the representation for direct processing in commercial CAD modeling systems and readiness for slicing and simulation software. Then, the possibility of representing complex solids is assessed along expected data size and accuracy in interpreting the geometry.

Table 2 Qualitative analysis of strengths and limits of geometry representation methods. Legend: “ +  + ” high suitability; “ + ” fair suitability; “\” medium suitability; “- “ low suitability; “- -”not recommended

In particular, BRep is the standard format for solid representation in commercial parametric CAD software, such as Solidworks, Creo and Catia. It provides high representation accuracy, reduced file sizes and good possibilities in editing of models. However, simulation software is not usually compatible with BRep. Slicing software and processing tools for AM generally work with tessellated geometry. However, the quality of the representation and the data size strictly depend on the number of polygons used for the approximation. Voxel representation is used for specific applications, and it is not usually compatible with standard CAD and slicing software. Also, it is not recommended for application where high representation accuracy is required due to the voxel discretization. NURBS representation is used in solid modelling as part of the BRep scheme. However, it becomes explicit in certain CAD software, such as Rhinoceros which uses its formulation to support advanced editing functions. Point cloud representation is usually the output of scanning devices and 3D cameras. Finally, FRep is ideal for storing non-homogeneous attributes as a set of additional functions, such as graded material properties. For example, FRep could model interior color, density and structure distributions, with limited data size in the file. Nevertheless, it may be challenging to define functions for complex solids. Another limit is that commercial CAD/CAM and slicing software is not ready to work with FRep. Additionally, the change in the orientation of the solid requires greater efforts in the implicit function formulation, which turns to be a disadvantage compared to the easy application of affinities to NURBS-based formulations.

3.1 Geometry file formats

Standard file formats adopted to convey geometrical data are here briefly reviewed. STEP is one of the most widespread file formats for the BRep and is widely accepted by mechanical solid modeling software. STEP stores the solid geometry and topology and adopts analytical formulations providing a high geometry accuracy [65, 194]. Nowadays, STEP 214 and STEP 242 also provide technological and production data. In particular, STEP 214 allows transferring dimensions and manufacturing annotations of the geometry, even if they are transferred as purely graphic elements without conveying any semantic information. STEP 242 provides semantic meaning. It recognizes the types of dimensions and stores the respective values and options. As a limit, STEP-stored geometry must be converted in the tessellated form to be compatible with processing algorithms.

Standard Triangulation Language (STL) format is the most widely adopted exchange file format in the AM context, encoded both in textual and binary format. Here, the geometry is discretized with a set of triangles. Despite its large utilization, STL presents some limitations. First, the format is redundant as each facet's vertices definition is repeated and facets’ normal can be computed in two ways [64]. Then, the exact analytical shape is not conveyed and many triangles are required to approximate complex shapes. Also, the surface approximation method is not tracked. Finally, STL cannot represent the original model’s color, material, or other technological properties [69].

Other file formats have been developed to overcome such limits [65]. Additive Manufacturing File (AMF) file is an eXtensible Markup Language (XML) format developed to encode a much more comprehensive set of geometric and technological data [66]. For example, it can approximate the surface by curving the triangle patches, reducing the file size. Also, it can describe multiple and gradated materials as well as mesostructured materials. Finally, AMF format is compatible with FRep. However, given the textual encoding, the resulting file size is usually larger than the STL file.

Similarly, 3D Manufacturing Format (3MF) is another XML-based file. It can store several geometric and technological data in a more compact format than AMF [67]. Colors, textures, support structures and graded material are available. 3MF format was defined by a consortium of service providers, software developers and 3D printers developers, with the aim to propose an open-source format that is readable, customizable and unambiguous.

The transfer of the elaborated deposition paths to 3D printers or robots generally follows a CNC-like approach. GCode is the standard format to describe the sequence of commands sent to machines to set parameters, move the head and actuate the deposition means to ensure the desired amount of material. Similarly, STEP-NC provides CAM operational information and STEP CAD geometry. It stores descriptions of the final product, general process and technology-specific process [74]. Nevertheless, STEP-NC is not compatible with commercial 3D printers. AutomationML [75] is an XML-based format developed to integrate different neutral data formats in exchanging data between robotic environments. AutomationML provides information about the topology, geometry, kinematics and logic of objects, reducing the number of data exchanges between heterogeneous tools. Recently, its use has been extended also to RBAM [76].

Finally, in the case of RBAM, the file containing CNC instructions must be translated into commands expressed in the specific robot programming language. The literature reports some attempts in this sense. For instance, RobotStudio is an offline programming tool for ABB robots that optionally includes a 3D Printing PowerPac, i.e., an additional module to provide instruction to a robot for RBAM. Also, RoboDK [195] has been customized to read AutomationML [76], whereas Grasshopper visual programming language [40, 196] has been used to translate a CNC file into a robot file command. However, these attempts are still limited in scope and the process is not fully automated.

4 Geometry processing

In this section, algorithms for processing the geometry will be analyzed and compared. In particular, the review follows the flow presented in Fig. 3. The part orientation methods are first analyzed. Then, volume decomposition for multiaxial deposition and continuously varied direction of deposition for RBAM are explored. Finally, slicing design and layer infill algorithms are reviewed.

4.1 Part orientation

The deposition direction is an important aspect in AM and many characteristics of the final output depend on the orientation of the component [77]. Indeed, the quality of the surface, the residual stress, the build time, the manufacturing costs the resulting mechanical proprieties as well as the quantity of support structures is strictly related to the selection of the orientation of the deposition head [78,79,80,81,82, 197, 198]. Even so, this choice implies compromises because the parameters are often conflicting [84].

In case of cartesian deposition, the main issue is to find the optimal part orientation according to objective functions and pursued objectives [83, 85]. For example, Byun and Lee [81] used weighted sum of surface quality, build time and part cost parameters to find the optimal orientation. Also, multi-criteria decision making (MCDM) tools are implemented to find the best build direction. Giannatsis and Dedoussis [199] have used a MCDM based on build time, surface quality and layer error. Similarly, Ransikarbum and Kim [86] and Qin et al. [89] used a MCDM approach based on build time, cost, surface quality, part accuracy and support volume criteria to find the optimized part orientation. Recently, Ransikarbum et al. [87] developed an integrated MCDM using the same parameters in [86]. Differently, Canellidis et al. [200], Zhang et al. [201] and Chowdhury et al. [202] used genetic algorithms to directly search an optimal part orientation based on defined criteria. In general, selection criteria need to be prioritized according to the specific design objectives and manufacturing conditions.

Part orientation approaches can be performed in a single-step [90] or adopting two-step methods, as in [91, 203]. In the first case [39, 90, 204], the part is rotated by a fixed or random angle to minimize/maximize the objective function [205]. At each rotation, the value of this function is calculated and finally the optimal result is stored [93]. The accuracy of these approaches depends on the rotation angle as well as the number of iterations. To reach satisfactory results, computational times and memory requirements become significant [93]. Two-step approaches moves from the generation of a discrete set of orientations from a set of infinite ones [92]. Then, best orientation from the alternatives is selected by applying a MCDM approach [206, 207]. Hence, two-step methods are more efficient than one-step methods because they work with a smaller number of possible solutions [93]. However, such methods are strongly based on the list of the candidate directions which need to be adequately completed. In fact, depending on the selection criterion, optimal orientations could be lost.

Specific functionalities have been developed in commercial software to support the selection of the optimal build orientation, e.g., in Ansys [185], Netfabb [186], and Materialise Magics [208]. Within these tools, it is possible to select one or more parameters to be optimized, such as the maximum supports height and volume. In addition, a weight can be assigned to each parameter. The software will provide a ranking of the possible orientations according to the selected parameters. Nevertheless, the user can resort to a limited set of parameters, which may not satisfy all types of applications. Also, supports are usually required after the selection of the part orientation. Supports increase the material waste and energy consumption and usually affect the overall quality of the final product [16].

4.2 Volume decomposition for multiaxial deposition

In case of RBAM multiaxial deposition, the use of supporting structures can be strongly limited, and the overall part quality improved. However, the identification of the deposition direction turns to be much more complicate as it can be continuously changed during the process. Therefore, a common approach found in the literature relies on the subdivision of the whole part solid in separate volumes, to be processed in a predefined sequence.

The methods discussed in this section are reported and classified in Table 3 according to their strengths and limits. The first three columns (CAT, VD, SD) provide a classification of the algorithms in categories, volume decomposition and slicing direction capabilities. The column ROBOT refers whether a robot is strictly required for the method. The column FLEX focus on the degree of geometrical complexity which can be processed, while the column manufacturability (MAN) highlights the likelihood of incurring in collisions and processing problems. Then, the table reports the algorithm suitability to address important issues of AM, such as overhangs (OH) and thermal stresses (TH). Finally, the table specifies which methods have been physically validated on industrial test cases (VALIDATION). Some algorithms can be exploited with cartesian and delta AM. In this case, each sub-volumes must be realized separately, and subsequently joined to form the final part.

Table 3 Algorithms for multiaxial deposition. Legend: “ +  + ” high suitability; “ + ” fair suitability; “\” medium suitability; “-” low suitability; “- -” not recommended; NC, not considered; REC, recommended; D, discrete; C, continuous; NFP, non-functional part; CAT, category; VD, volume decomposition; SD, slicing direction; FLEX, flexibility; MAN, manufacturability; OH, overhang; TH, thermal stress

Multiaxial deposition algorithms can be divided into two macro-categories. The first one aims to divide the part geometry in a discrete number of sub-volumes, each built along one direction, mainly to eliminate the overhangs. In the second category of algorithms the deposition direction changes continuously requiring non-constant thickness layers. Besides, these algorithms include curved layers.

Starting from the first category, the algorithm developed by Chopper [107] uses cutting planes to split a large volume considering the build volume of cartesian/delta printers. The sub-volumes are joined thanks to connectors and picks. The algorithm is based on the following: (1) printability, i.e., the part fits in the printing volume; (2) assemblability; (3) efficiency, i.e., avoiding small parts; (4) connectors feasibility; (5) structural soundness; (6) aesthetic. Nevertheless, this method does not include an overhang minimization function. Also, the post assembly phase could be time-consuming and connectors must be properly designed.

On the contrary, the silhouette curve algorithm [102, 114] was specifically developed for RBAM. It decomposes the CAD model into a finite set of buildable sub-volumes. Starting from an initial slicing direction, the algorithm analyzes the surfaces normal at each point, evaluating overhang areas. Isoclines [209] and silhouette curves are implemented to split the total volume into buildable and unbuildable parts. Then, the algorithm computes the build map of the surface that collects the possible deposition direction of a given sub-volume. Heuristics criteria can be used to select the best direction. If no directions can be found, supports are required. Despite that, some geometries cannot be decomposed, generating supports even where they can be avoided. Also, the computation is time-consuming for parts with inner cavities or holes [116].

Additionally, the silhouette algorithm was implemented for the elaboration of revolved parts and experimented on a robotic cell composed of a robot arm with six degrees of freedom and a working table with two degrees of freedom [114]. Overhangs of revolved parts that are computed by the silhouette algorithm are mapped to a planar base to manage overhangs as planar features. However, the scope of this method is limited to robotic cells with eight degrees of freedom and applies to revolved parts. Similarly, the algorithm in [103] evaluates overhangs of an input geometry to perform a support-free manufacturing. Nevertheless, this algorithm was only tested on simple test cases.

The transition wall [113] strategy has been proposed to remove overhangs by means of thin volumes built along perpendicular directions to support the remaining part to be deposited. To clarify, as depicted in Fig. 7b, when an overhang is identified among two consecutive layers, only the overlap area is firstly deposited. Then, the machine head is turned 90° to start depositing the transition wall on the contour of this overlap area [95]. After the wall is finished, the part is flipped back to its original direction to continue the deposition process. Unfortunately, this method cannot be always applied and it has been shown only in demonstrative cases. Also, tool collisions can easily occur.

Fig. 7
figure 7

Transition wall and liquid surface tension approaches, adapted from [113]

Similarly, the liquid surface tension method aims to remove the overhang area by rotating the extruder head [113]. This approach is based on the property of surface tension of liquid and it requires experimentation to obtain satisfactory results with a good surface finish [210]. For example, tool speed and feed rate must be carefully selected according to the physical characteristics of the material being deposited. Again, tool collisions can occur.

Cutting planes algorithms are presented in [95, 104]. Here, the solid is divided into free of supports sub-volumes using cutting planes. The planes are generated from an analysis of the overhang areas moving from an initial growing direction. The slicing direction of each sub-volume is identified as the normal to the cutting plane, as shown in Fig. 8. Greedy algorithms are used to adapt the slope of the cutting plane according to the technology limits [104]. As a drawback, the subdivisions created by this algorithm could be non-optimal and leave overhangs, as shown in Fig. 9a. Also, too extensive sub-volumes can be generated, as shown in Fig. 9b.

Fig. 8
figure 8

Topological information method, adapted from [95]

Fig. 9
figure 9

Problems in the application of cutting planes search algorithm. a Overhang portions still remain. b Large subvolumes are uselessly separated

Similarly, the algorithm in [105] adopts overhang minimization and tool collision avoidance criteria to generate a set of cutting planes. The algorithm is composed of three steps. First, it separates the buildable volume from the unbuildable one identifying the intersecting curves between them according to a starting deposition direction. The second part of the algorithm generates the decomposing surfaces according to the parametrization of overhangs surfaces, evaluating their directional profiles. Finally, the algorithm computes the sequence of the decomposition, avoiding tool collision. This method considers many technological limits and may result useful in many contexts, even though it often generates a large number of sub-volumes.

Then, a beam-guided searching algorithm [18] was introduced to determine the optimal volume decomposition, represented by a sequence of clipping planes, as depicted in Fig. 10. The algorithm divides the CAD model into sub-volumes based on four criteria: (1) minimization of the support structure; (2) preventing non-manufacturable regions; (3) guaranteeing that the current sub-volume is totally above the previous one; (4) preferring a large solid volume for the region above a clipping plane. First, a constrained greedy scheme is implemented: clipping planes are selected to maximize the descent of overhang areas while imposing that these areas are self-supported. Normally, local optima are found instead global ones. Subsequently, a beam-guided search is implemented to improve the outputs of the greedy scheme. Candidate clipping planes that remove larger areas of overhang faces have higher priority when filling the beams, satisfying a restrictive requirement related to self-supported sub-volume. The requirement is progressively relaxed. Each beam collects a list of clipping planes that decompose the input geometry and the decomposition with minimum support volume is selected. Despite the ability to achieve the subdivision goal, the algorithm may sub-optimally split the volume even for simple geometries.

Fig. 10
figure 10

Beam-guided searching algorithm, adapted from [18]

Genetic algorithms have also been explored to find the best subdivision [115]. This approach implements two criteria related to collision-free and support-free deposition, starting from a certain number of planes. The algorithm implements elitism, adaptive probabilities of crossover and mutation and simulated annealing to increase its robustness. Then, given the number of cutting planes, solutions are initialized by randomly sampling a parameter space, considering the constraints of collision-free. The parameter space is a vector composed of points and rotational angles. The solution that minimizes the volume of the support is selected. Even so, this algorithm does not provide the required number of planes to remove the entire overhang, which must be input by the user.

The algorithm in [106] aims at decomposing the model into support-free parts directly considering a cusp-height constraint minimization. In particular, it evaluates the normal vectors of vertices of an input tessellated geometry (triangular mesh) starting from an initial build direction. Vertices that are in overhang are collected using the Gauss map [211]. Then, it computes an optimal build direction to remove the overhang generated by the group of points. After, a cutting plane is generated on the highest point with normal parallel to the new build direction. Finally, the normal of the plane is adapted to maximize the number of points above the plane, avoiding tool collision. This method works properly with small group of geometries, such as tree-like structures.

The concave-loops extraction algorithm approaches the volume decomposition from a different perspective [17]. This algorithm finds a set of concave-loops on the imported model, defined as an ordered series of concave connected edges [94, 98], as shown in Fig. 11a. Concave-loops are used as a parting line to divide the volume. The slicing directions of sub-volumes can be identified following two approaches. The first approach projects the concave-loops onto a 2D plane. Then, the centroid and the normal vectors of the projection plane are calculated and the normal vector is selected as the slicing direction. It must be noted that overhangs are not totally removed because the projection plane considers curved surfaces, as shown in Fig. 11b.

Fig. 11
figure 11

a Concave-loop, adapted from [17]. b Overview of the algorithm, adapted from [17]

In the second approach [96], the optimal slicing directions for the sub-volumes are identified by adopting the minimal enclosing crown algorithm [113]. A preliminary small holes simplification phase can be provided. In particular, the normal vectors of the facets of the layer are recorded in a set \(n\). The problem is stated as follows: given a set of normal vectors \(v = (v1, \dots , vi, \dots , vn)\), find the optimal vector that produces the smallest maximum angle between this vector and any vector \(vi\) within the set. A Gauss Map [211] is used to collect the normal vectors that can be represented in a set of points on the surface of a unit sphere. A spherical crown with a minimum-radius bottom surface that contains all the points can be found on the sphere surface for this set of points. The vector that connects the center of the sphere to the center of the bottom surface of the minimal enclosing crown is the optimal slicing direction [212] (see Fig. 12b).

Fig. 12
figure 12

a Optimal slicing strategy, adapted from [113]. Gauss map for optimal direction search, adapted from [113]

Although the concave-loop extraction seems a promising approach to find sub-volumes, this method strictly depends on the fixed curvature threshold used to find concave-loops. Therefore, some sub-volumes may be missed, especially in the presence of non-trivial geometries. Finally, not all geometries have concave-loops. Hence, overhangs may not be removed with this technique, which is most likely to be used as a preliminary step to simplify complex volumes.

4.3 Continuously varied direction of deposition

The algorithms reviewed in the previous section provide a discrete number of sub-volumes and slicing directions. On the other hand, multiaxial deposition can be performed by continuously changing the deposition direction. For example, the optimal slicing direction can be optimized for each layer to minimize the overhang by the adaptive slicing direction algorithm [113], also increasing the surface finishing, as reported in Fig. 12a. In this context, the minimal enclosing crown algorithm is applied, adapting the slicing direction for each layer.

Due to technological limits, the layer thickness must be bounded to a specific range. Therefore, the deposition direction of a layer cannot be too tilted compared to the one of the previous layer [113]. As shown in Table 3, this method can adapt to curved geometries, also increasing the overall surface finish. Furthermore, overhangs are minimized as the slicing direction is constantly adapted to the characteristics of the geometry. In this case, supports are still required for high curvature portions. Although this procedure seems promising, it has been scarcely tested in experimental setups and it basically remains a theoretical approach.

The centroidal axis [99] is used to find the optimal slicing strategy of a given CAD model. With reference to Fig. 13a, such axis is composed of a series of points that are centroids of cross sections at different locations. A cross-section is the intersection of a planar surface with a CAD model. The position of the centroid can be obtained by computing the barycenter of a cross-section. The centroid axis can be used as a dorsal curve of slicing, defining curved trajectories and identifying sub-volumes when the centroidal axis branches. Although the centroidal axis follows the shape of slender geometries very well, extremal or bulky portions are often not captured properly, as visible in Fig. 13b.

Fig. 13
figure 13

a Centroid axis. b Limit of the centroidal axis extraction method. Adapted from [99]. c MA of a tree-shape, adapted from [100]. d Surface extraction [108]: blue triangles are supported while red triangle need supports. T, path direction; D, tool head direction; N, normal of the facet

Similarly, the medial axis (MA) of geometry (see Fig. 13c) can be used to drive a continuous multiaxial deposition. The MA, or skeleton of the set D of 3D space, is defined as the locus of points that lie at the centers of all closed balls. These balls are maximal concerning D, together with the limit points of this locus. A closed ball is maximal if it is contained in D but is not a proper subset of any other ball contained in D [213]. The MA is a powerful tool as it gives useful topological information of a given part, such as the thickness at each shape point [101]. As the centroidal axis, MA can help in identifying the slicing directions [109, 110] in case of curved slicing [109] or adaptive slicing [111] (see the following section for details). Also, MA can be used to generate discrete sub-volumes [27, 100]. However, not all the geometries can be efficiently described with MA, such as bulky shapes and spheres [111] or geometries with no branches. Also, small details on the surface can be missed. Finally, the MA computation depends on the quality of the mesh and could be complex [112].

Another method for continuous multiaxial deposition is based on surface extraction [108]. This algorithm starts by computing the overhang and non-overhang areas. The problem is formulated as follows: if the overhang surface could be produced, the inner volume and the non-overhang surface could also be produced. The algorithm provides a vertical deposition for the inner volume and non-overhang surface, and a multi degrees of freedom deposition for the overhang area. The part is continuously tilted so that the tool head is kept tangent to the face of the triangle and perpendicular to the path direction, as depicted in Fig. 13d. Therefore, the tool continuously changes its alignment according to the curvature of the surface and builds a wall which sustains the deposition of the inner volume. The method strictly depends on the quality of the mesh and only a subset of shapes can be handled. Furthermore, there may be adhesion problems between the vertical and multi degrees of freedom deposition.

Volume decomposition was also applied to hollow parts [214, 215]. In this case, a decomposition of the interior of a given CAD model is computed to avoid support structures. Interior support structures are impossible to remove unless using soluble materials [216]. These algorithms subdivide the interior according to defined self-supported geometries, generating a suitable infill strategy to fulfill support-free manufacturing.

Examples of test parts being manufactured according to some of the reported algorithms are depicted in Fig. 14.

Fig. 14
figure 14

Manufactured test parts from a, b beam guided searching algorithm [18]; c cutting-plane algorithm based on overhang minimization [105]; d genetic algorithm [115]; e medial axis algorithm [100]

4.4 Slicing design

One of the key phases of geometry processing for AM is the slicing of the CAD model. Slicing approaches can be classified according to several characteristics. A first aspect regards the geometry of the slice which can be planar or non-planar (curved). Furthermore, the distance between layers can be constant (also referred to as uniform slicing) or non-constant (named adaptive slicing [98]). Finally, a layer can be uniform or non-uniform, i.e., when the thickness of the deposited material varies along the slice extension.

In Table 4, slicing methods are reported according to specific classification criteria. In particular, the type (planar or curved) and the thickness (constant or adaptive) of the slicing are showed. The column TD (thickness distribution) highlights if the thickness between two consecutive layers is uniform or non-uniform. The table shows whether the algorithm can be found in commercial software (column CS) or only in literature works. The column flexibility (FLEX) provides a subjective evaluation on how the method adapts to geometry with high complexity. Furthermore, the table highlights to which extent the slicing method minimizes the staircase effect (column SC E). Finally, the table shows whether the algorithm has been validated on real industrial cases.

Table 4 Algorithms for slicing strategy. Legend:: “ +  + ” high suitability; “ + ” fair suitability; “\” medium suitability; “- “ low suitability; “- -” not recommended; TD, thickness distribution; CS, commercial software; FLEX, flexibility; SC E, stair case effect; NFP, non-functional part

Planar slicing with constant and uniform thickness in the Z + direction is the most common strategy because it is easier to be implemented, has efficient computation time and relies on robust algorithms derived from years of application [116]. Most of available slicing software adopt this solution, e.g., Netfabb [186], 3DS [187], Cura [188], PrusaSlicer [217], Idemaker [218], Simplify3D [219], and Slic3r [220]. Many studies have been carried out over the years to reduce the computational effort of planar uniform slicing, increasing the efficiency of the algorithm [117]. However, such slicing strategy results in the staircase effect which decreases the final product's surface finish and accuracy [118], requires supports fabrication and does not leverage the potentialities of RBAM. The staircase effect can be evaluated by measuring the cusp height. This index describes the maximum deviation between printed part and model surface [119, 221] (see Fig. 15). It increases by increasing the layer thickness. Also, geometries that are not completely planar or vertical usually present high cusp height values.

Fig. 15
figure 15

Cusp height and staircase effect

Planar adaptive and uniform slicing was developed to overcome the staircase effect [119, 120]. In these algorithms, it is mandatory to impose a minimum thickness due to the technological limits of the printer and a maximum cusp value, which is mostly dependent on the surface quality. The layer thickness is calculated accordingly. Therefore, the layer thickness varies by considering the geometry of the CAD model along the build direction to improve the surface finishing, minimizing the building time and the roughness [116]. In Fig. 16, an adaptive slicing algorithm is shown, in which the slices thickness varies according to the surface curvature to maintain limited cusp height values.

Fig. 16
figure 16

Example of adaptive slicing, source: a taken from [120], b taken from [121]

Algorithms have been developed to improve the efficiency of planar adaptive slicing. For example, the metric profile algorithm [122] measures the geometry error distribution along a given building direction. The algorithm weights different features of a CAD model and incorporates the commonly used surface quality metrics, such as cusp height, surface roughness, area deviation and volume deviation. Over the years, these algorithms have been refined for successful implementation [130]. Nowadays, adaptive slicing algorithms are also implemented in commercial slicing software. Nevertheless, the layer thickness distribution is manually input and the final result relies on the user experience.

Non-uniform slicing was used to slice curved products by varying the thickness of a single layer [113], as shown in Fig. 17. As a result, the layers are not parallel (non-uniform) to each other. This method is suited for extrusion printers, i.e., FDM and WAAM. Indeed, the extruded material flow must be adapted according to the desired thickness.

Fig. 17
figure 17

Non-uniform slicing: layer thickness varies from t1 to t2, adapted from [113]

Non-planar slicing algorithms were developed to overcome the limitations of planar slicing. These approaches can increase the product’s surface finish, especially when non-planar geometries need to be processed, also minimizing the number of layers [124].

Several strategies have been developed in the last two decades to accomplish non-planar slicing. Although non-planar slicing is addressed in RBAM, Curvislicer [41] algorithm performs a non-planar slicing for FDM cartesian/delta printers. The algorithm starts with a uniform planar slicing of the deformed geometry. Then, it returns the toolpath to the original space. The objective is the minimization of the staircase effect. The algorithm modifies the thickness within the layer by imposing manufacturing limits that depend on the diameter of the nozzle, avoiding the collision between the deposited material and the tool head, especially with concave surfaces. Other applications of non-planar slicing can be found for FDM cartesian/delta printers [40, 222]. In this context, the file containing the moving instructions for the printer must be integrated with the data concerning the flow of the extruded material. An algorithm for non-planar slicing (see, e.g., [223]) can be implemented utilizing the Slic3r software [220].

One of the first non-planar slicing applications was laminated object manufacturing [125]. In this case, the x–y plane is divided into a uniform spaced grid, varying the Z + value of the points. A similar procedure can be seen in [126], where the non-planar layer is represented by the height values (Z) at each point on the x–y grid, as also shown in Fig. 18a. The main problem of this technique is that a series of points approximate the non-planar surface and the reached quality depends on the number of grid points. However, the surface will always be approximated. Furthermore, this approach is challenging to implement for complex-shaped industrial test cases.

Fig. 18
figure 18

a Height grid representation [125]. b Slicing with non-planar surface [127]. c Surface generated with Grasshopper [132]. d Offset of parametric surface: FT = filament tangent, FS = filament surface [129]. e Curved layers by offsetting mesh triangles [131]

On the other hand, the authors in [127] have proposed a procedure for curved slicing based on the intersection between iso-parametric surface and tessellated CAD model (see Fig. 18b). In particular, this method adapts the slicing surface to the shape of the part which must exhibit a suitable surface parametrization. Grasshopper, by McNeel Inc., has been used as a graphical programming tool to devise an algorithm to slice a doubly-curved panel [132], also creating the printing path in multiple layers (see Fig. 18c). This method is developed only for cartesian/delta printers, so, tool collisions can occur between extruder and the deposited material.

Parametric surfaces have been explored to develop curved layers [129]. In this case, an optimal path strategy is researched to ensure lateral bonding based on constant chord of contact, as in Fig. 18d. Although this work seems promising, no physical tests have been reported. Finally, a variable-depth non-planar layer algorithm was tested for thin shells [133]. In this case, the deposition direction and the thickness within a layer is changed. This is possible by aligning the extruder with the surface normal thanks to a robot or a working table with 2 degrees of freedom.

Curved layer adaptive slicing (CLAS) is another slicing procedure for FDM [131, 134]. This algorithm generates the curved layer surface by offsetting the facets of the STL model along their normal directions, as shown in Fig. 18e. Even so, there are still open issues related to the self-intersection of the triangles and imperfect layers approximation due to mesh representation [98].

The concave-loop set extraction algorithm [94] is used to perform non-planar slicing. After calculating the concave-loops of a CAD model, the algorithm offsets a surface interpolated on the extracted curves to obtain non-planar layers, as shown in Fig. 19a. This approach presents the same issues of the concave-loop algorithm described in Section 4.2. Finally, another algorithm was developed to support the slicing of cylindrical surfaces. Each cylindrical slice is transformed into a plane-based model. After that, the planar slicing and the path generating strategy are adopted to compute the model. Last, the planar paths of each layer are reversely transformed into the non-planar paths [94, 98], as shown in Fig. 19b. As a limit, this method is restricted only to cylindrical surfaces.

Fig. 19
figure 19

a Concave-loop algorithm: (1) decomposing volume, (2) offsetting surface, (3) slicing, (4) path generation. b Algorithm for cylindrical geometry [94]. c Result from voxel slicing algorithm [135]

A curved layer algorithm was successfully applied in [135] to remove the need for supports. This algorithm leverage a voxel-based geometry representation and provides a voxel-by-voxel deposition sequence. In particular, material accumulation is obtained by adding the voxels one by one, first onto the printing platform and then onto previously added voxels. The algorithm computes the deposition of the voxel under three constraints: (1) deposit the voxel only if the neighborhood is already deposited (support free constraints); (2) avoid tool collision with the already deposited material (accessibility constraints); (3) avoid non-manufacturable voxels (shadow voxel constraints). Finally, the algorithm employs the dual contouring method to develop curved layers (see Fig. 19c). The algorithm requires high computational effort during the process of complex and large parts due to voxelization, but it fully leverages multi-direction capabilities.

The curved slicing provides interesting potentialities. However, reached results are still preliminary and many issues connected to optimal deposition strategy, surface quality and robot accuracy must be faced. Also, curved layers have not yet been tested on industrial functional parts.

A last line of research is connected to geometries represented as FRep. Song et al. [69] have developed an algorithm to directly slice a FRep model without the need of tessellation. They focused on contour extraction, inner shell generation, infill strategy and generation of hollow objects. In their algorithm, the particular geometry formulation is tackled as follows. They have rotated a given solid \(H\), defined by Eq. (3), into the coordinate system with the \(xy\) plane parallel to the slicing plane \(P\) defined by Eq. (4).

$$H=\left\{p\in U{\subseteq R}^3\right|\;f\;\left(p\right)\leq0\},$$
(3)
$$P=\left\{(x,y,z)\in R^3\right|z=z_0\;constant\},$$
(4)

where \(U\) is the domain of \(f\). Finally, the contour of the layer is defined by the intersection of these two terms, as in Eq. (5):

$$H\cap P=\left\{\left(x,y,z\right)\in U{\subseteq R}^3\right|\;f\;\left(x,y,z_0\right)=0\},$$
(5)

Also, adaptive sampling is used to reduce the contour tracing time [69]. When the plane intersects the solid, a grid is generated in the reference plane. Subsequently, the grid is thickened where the edge of the solid is present, as shown in Fig. 20. A high grid density allows for adequate contour approximation.

Fig. 20
figure 20

Adaptive contour sampling for FRep geometry [69]

Similarly, Popov et al. [68] have directly sliced a FRep model without the conversion of the geometry into a mesh. From the review, a small number of slicing approaches have been found for FRep.

4.5 Infill strategy

Many different infill strategies can be found in the literature and are implemented in commercial software. In Table 5, the available approaches are summarized based on their characteristics. In particular, the column CS reports whether the infill strategy is used in commercial software. As in the previous sections, the column VALIDATION is used to indicate whether the algorithm has been tested on industrial test cases. Finally, some typical issues of infill strategies are addressed, i.e. corner approximation capability (column CA), voids and gaps minimization (column V&G), direction changes limitation (column CD), and path continuity (column PC).

Table 5 Types of infill strategies. Legend: “ +  + ” high suitability; “ + ” fair suitable; “\” medium suitability; “-” low suitability; “- -” not recommended; CS, commercial software; CA, corner approximation; V&G, voids and gaps; CD, change direction; PC, path continuity; NFP, non-functional part

The most common strategies for basic patterns are summarized in Fig. 21. These paths are found in commercial software, such as Netfabb [186], 3DS [187], Cura [188], Ideamaker [218], and PrusaSlicer [217]. Also, most of the advanced path strategies are developed based on these types [43]. For example, honeycomb, cubic, triangle, gyroid and rectangular are widely adopted [218]. Next, the most common path strategies are analyzed from a geometrical point of view. It should be noted that additional parameters, such as the infill density, are commonly introduced to further define the resulting paths.

Fig. 21
figure 21

Basic path strategies: a raster uni-directional; b zig-zag; c grid; d contour

In raster infill [224], the material is deposited in uni- or bi-directional ways. This algorithm is simple to implement and robust, but it is not optimized in terms of product performance. Indeed, the raster pattern generates high anisotropy and distortions, especially when DED is adopted and the energy rate is high [156]. Studies were conducted to reduce these problems. For example, Yao et al. [225] proposed a 3D weaving deposition based on a raster pattern to reduce the anisotropy.

Zig-zag infill is also extensively used due to its simplicity and robustness [137, 226]. Contrary to the raster approach, here the path is more uniform and continuous, leading to better performances [156]. Several researches have been done in the past years to optimize zig-zag infill [138, 157]. Also, an algorithm was developed to divide layers of complex geometry into convex sub-sections [139]. Then, the zig-zag infill is generated for each sub-section and the different paths are connected to produce one closed curve [139]. Bézier curves were used to regulate the tool speed and uniform the extruded material distribution [140]. However, the accuracy of the edges of the zig-zag pattern that are not parallel to the motion direction is poor due to discretization errors [156, 158]. Also, several direction changes occur during zig-zag infill which can generate printing failures, especially in RBAM, due to the low precision of the robot movements.

Conversely, the contour infill is used to increase the accuracy of the edges. In this case, the layer’s boundary is offset by a certain value [136, 141, 227]. Nevertheless, this solution can generate voids and gaps, especially when the layer geometry presents sharp corners. Also, the path is not continuous, decreasing the deposition accuracy [137, 156]. A closed contour path was performed in [152] to improve the efficiency of the process. Also, contour infill was adapted to remove voids and gaps thanks to a correction of the path in the presence of sharp corners [159, 160]. Then, contour infill was optimized to obtain isotropic properties by analyzing the topology of each layer [161].

To exploit the advantages of both, hybrid contour and zig-zag paths were investigated, as visible in Fig. 22a [142,143,144]. First, the boundary of the layer is offset. Then, a zig-zag infill is generated as well. In this case, the geometrical accuracy and build efficiency are satisfied. These algorithms avoid voids and gaps, also increasing the corner approximation [162].

Fig. 22
figure 22

Continuous infill strategies: a hybrid [142]; b spiral [146]; c Hilbert curves [148, 149]; d continuous [150]; e maze-like [164]; f pixel algorithm [153]

Continuous path infill strategies are developed to reduce the tool starting and stopping and reduce the printing time [163]. In this sense, the spiral infill was developed [145, 228] (see Fig. 22b). Although this solution is promising for technologies such as WAAM where arc starting and stopping are critical factors, it is applicable only to simple shapes [146]. Another method to increase the continuity of the deposition is based on fractal space-filling curves [147], as shown in Fig. 22c. Different studies were carried out utilizing Hilbert curves [148, 149]. However, the deposition direction changes frequently causing infill defects, especially when the head is driven by a robot.

Like the fractal solution, continuous infill [150] (Fig. 22d) is implemented to generate continuous motion. On the other hand, a maze-like pattern [164] is developed to increase the build speed and the mechanical properties (Fig. 22e). Then, a continuous infill strategy was presented in [165], where each layer is filled with a specific polygon shape.

Pixel algorithm was developed to optimize the infill of a layer thanks to a continuous deposition. In this algorithm, the layers are fractioned in squared grids. Then, a set of dots is systematically generated and distributed inside the layer. After, the pixels are reassembled and the trajectory is planned [153], as shown in Fig. 22f. In particular, this algorithm is composed of four phases: (1) discretization of the layers; (2) definition of starting position and node connections; (3) trajectory optimization; (4) storage of the generated optimized trajectory.

In general, continuous infill strategies minimize the deposition head starting and stopping and increase the manufacturing speed, also reducing voids and gaps. Nevertheless, the resulting paths often contain frequent direction changes. These changes can decrease the printing quality, especially in RBAM, where the tool path is further approximated due to the intrinsic dynamic limits of robots.

Another infill strategy is based on the medial axis transformation (MAT) of the closed contour of each layer, as depicted in Fig. 23a. After a proper simplification of the resulting geometry, the MAT is repeatedly offset toward the border [151]. This infill type avoids gaps but may require post-processing to remove excesses of deposited material. Subsequently, this algorithm was improved, thus reducing the need for post-machining [166, 167], as shown in Fig. 23b (adaptive MAT). In this case, the area of the layer is decomposed into a set of simple shapes. For each shape, adaptive paths are generated, enabling closed loops. Also, adaptive MAT was successfully applied with Gaussian process regression [168] to avoid voids and gaps, increasing the corner approximation, as depicted in Fig. 23c.

Fig. 23
figure 23

a MAT [151]. b Adaptive MAT [166, 167]. c Adaptive MAT using Gaussian process regression [168]

One undesirable characteristic of the MAT-based approaches is the generation of many separate tool paths which leads to increased numbers of tool starting and stopping [169]. Also, adaptive path algorithms require an advanced smart control of the deposition rate to obtain different dimensions of the cord. Finally, these algorithms were mainly tested on thin walls structures [229].

In order to maximize the advantages of the different infill approaches, a modular path planning was proposed to adapt the infill strategy according to the features of the layer [170]. This approach provides different infill solutions according to the geometry of the layer, also adapting the process parameters. However, the modular path planning is not fully automatized and the quality of outputs depends on the user experience.

Finally, it is important to highlight the importance of leveraging experimental bead creation models as a key aspect in infill development [162, 168]. These models help in providing bead dimensions, such as height and thickness, and drive the correct infill paths generation according to the chosen process parameters [53, 154, 155].

It is worth to mention that few infill strategies have been developed and tested on curved layers [128, 132, 135, 230, 231] in order to leverage the extended possibilities provided by RBAM. In particular, basic infill patterns have usually explored, i.e., raster and zig-zag infills, and few physical tests have been performed on functional parts. Generally, standard planar approaches have been adapted to curved layers after a proper parameterization of the slice surface [128, 132].

4.6 Consideration on the integration of geometry processing tools

The processing of geometries destinated to AM, and even more to RBAM, are still based on many software tools of different nature which often need to be combined together. As depicted in Fig. 24, many geometry processing paths can be identified and three main types of tools can be recognized: commercial software for generic uses, specific software developed for AM, and research algorithms implemented in prototypal tools. The first category includes tools as traditional CAD systems, which can be used to directly model the part shape, or volumes in which the shape is searched by topology optimization algorithms. CAD systems have recently included functionalities for modelling cellular and trabecular structures to reduce the weight of parts to be realized by AM and incorporate packages for topology optimization. It is the case of SolidEdge and NX by Siemens, or CREO by PTC.

Fig. 24
figure 24

Processing tools for cartesian/delta AM and RBAM. *Each sub-volume is produced separately. They must be assembled into the final part after the manufacturing

A second family of tools includes specific software for designing and processing parts for AM, such as FEM-based software which have been evolved to cope with AM manufacturing constraints in the context of the shape optimization. It refers to systems such as Inspire and Optistruct by Altair, Ansys Mechanical and others. Additional tools aim at covering the majority of the development and processing phases, such as Netfabb by Autodesk, 3DExperience by Dassault, or Magics by Materialise. In this category, many dedicated systems connected with the preparation of the instructions to be sent to printing machines can be included. These software (e.g., CURA, PrusaSlicer, etc.) are born in open source contexts and are normally proposed in combination with specific machines even though the implemented functionalities are becoming universal. Standard slicing and infill strategies are provided and the output is given with GCode format.

Finally, many on purpose prototypal tools have been developed in research contexts as reviewed in the previous sections. Such software comes to a role especially when advanced techniques such as multiaxial deposition or curved slicing are experimented in the context of RBAM. Given the absence of consolidated tools and the necessity of additional processing steps, many different tools must be combined together, as depicted in Fig. 24.

An important step is given by the translation of the GCode instructions into robot commands. This phase can be supported by specific packages such as RobotStudio 3D Printing Power Pack by ABB [232], Eureka Robot or WAAM3D [233]. However, the provided functionaities are limited and custom code often needs to be integrated. Further development of tools are expected according to the progresses in the RBAM field, especially for volume decomposition in multiaxial deposition, non-planar and non-uniform slicing and advanced infill strategies.

5 Conclusions and future research directions

This paper reviews the main geometry representations and processing methods for AM and RBAM, such as part orientation, multiaxial deposition, slicing and infill generation. Several methods and tools are recalled and compared according to selected characteristics and classification criteria.

Even though approaches and tools have been reported for both cartesian and RBAM, it clearly emerges how in the first case methods are consolidated and widely implemented in commercial tools, while RBAM requires novel algorithms which have been currently explored in the research community only at an initial stage. Furthermore, commercial software lack of automated functionalities to manage typical needs of RBAM, such as multiaxial deposition, non-planar layers, non-uniform thickness and advanced infill strategies, so that operators need to recur to manual and cumbersome procedures.

From the reviewed material, the authors have identified the following future research directions:

  • FRep can be a valid option for handling geometry in the context of AM due to its inherent capability of representing advanced product properties, such as material density distribution and graded features. So, tools to elaborate geometries in this form would be desirable to ensure higher representation flexibility and better description of parts with extended complexity, allowing new modelling and data exchange options in the context of typical development workflows.

  • Multiaxial deposition enables the deposition of materials along multiple direction, reducing the need of support during the manufacturing. However, procedures to tackle the realization of parts of generic shapes are still missing. It is necessary to combine efforts made in separated directions in a unique holistic approach, which includes: minimization of supports, optimization of the initial orientation, optimal volume subdivision, optimal deposition parameters choice, appropriate layers shape and thickness, optimal infill strategy. The expected outputs are connected with an optimization of the product in terms surface finish, material consumption, residual stress reduction and costs.

  • Different strategies have been found to face multiaxial deposition. A first category of algorithms looks for a decomposition of the initial volume into a discrete number of sub-volumes, while a second one relies on changes to the deposition direction in a continuous manner. Each approach has been developed and tested for particular geometries while no algorithms have been found that combine more methods together. Therefore, implementing different strategies according to the features of a product becomes a promising future direction of investigation to gain more generality. Finally, more test cases on industrial parts are expected to validate the approaches.

  • Non-planar and non-uniform slicing algorithms deserve future research. In fact, accomplished work in the literature is limited even if the expected benefits that RBAM could bring are considerable. Software tools to create curved deposition layers as well as to design infill of non-planar and non-uniform layers is mandatory to maximize the part quality and surface finishing while minimizing distortions and material consumption. The selection of the slicing type and layer shape according to the features and sub-volumes of a given part are future expected developments.

  • Despite several infill strategies have been proposed in the literature, there is still the need to define guidelines to identify the most suitable infill approach to obtain specific printing performances (i.e., execution time, quality, layers adhesion, failure occurrence, etc.). Furthermore, such point is even more unexplored in case of non-uniform and curved layers adopted in RBAM.

  • The adoption of RBAM will be competing in the industry with other production technologies, i.e. forming, machining, molding, etc. Designers should be supported with adequate approaches, and possibly tools, to estimate design and realization efforts and costs of the different manufacturing options in order to make comparisons and support the decision making.

  • The translation of deposition paths geometries, usually in the form of CNC files, into a robot program is a mandatory step in RBAM. The existing tools for the generation of robot programs starting from a GCode have limited functionalities and do not allow complete control of the process parameters. Therefore, the development of fully automized interpreters of paths file to obtain robot programs including continuously varied process parameters, such as the deposition rate, is a necessary topic of research. Additionally, approximation strategies of the trajectories followed by articulated robots should be properly explored.

While AM can be considered an effective production system today with standardized and consolidated procedures, RBAM is still limited to the research field and many challenges needs to be faced to smoothly process the geometry of the parts to be realized. Therefore, this work has aimed to a systematic review of the papers found in the literature to pave the way to further research work toward the development of automated geometry processing tools adopting algorithms and procedures to support the realization of components fully leveraging the potentialities offered by RBAM setups.