Acta Polytechnica CTU Proceedings https://doi.org/10.14311/APP.2023.42.0027 Acta Polytechnica CTU Proceedings 42:27–31, 2023 © 2023 The Author(s). Licensed under a CC-BY 4.0 licence Published by the Czech Technical University in Prague DESING OF THE ALGORITHM, PRINT AND ANALYSIS OF POROUS STRUCTURES WITH MODIFIABLE PARAMETERS Radosław Grabieca,∗, Jacek Tarasiuka,b, Sebasatian Wrońskia,b a University of Cracow, Akademia Górniczo-Hutnicza im. Stanisława Staszica w Krakowie, al. Adama Mickiewicza 30, 30–059 Cracow, Poland b University of Cracow, Faculty of Physics and Applied Computer Science, Department of Condensed Matter Physics, Ul. Reymonta 19, 30–059, Cracow, Poland ∗ corresponding author: rgrabiec@student.agh.edu.pl Abstract. The purpose of this paper was to create an algorithm able to creating a porous structure with variable properties, print and analyze them. The basic concepts related to it were introduced and the process of creating an algorithm in Rhinoceros software was described. Having a suitable test group of porous structures, it was shown that it is possible to modify their porosity. In the next step, the structures were presented for printing and its effect. The obtained physical models were examined by microtomography. The resulting cross-sections were processed in ImageJ software. Having cross-sections of the original bone and printed structures, it was possible to compare their porosity and the average diameter of the trabeculae in the structure. With this procedure, it is possible to deduce whether it is possible to print accurate structures that will serve as porous bone implants. The resulting differential porosity comparison was 2.0–7.5 %, while the thickness was about 18–35 %. Keywords: Porous, bone, Voronoi, Rhinoceros, Grasshopper, implants, 3D printing, microCT. 1. Introduction Malignant bone tumors, or so-called sarcomas, are quite rare, making medical personnel’s infamiliar with the problem and with treatment techniques. Often, even in the early stages of the disease, when it has not managed to significantly occupy the soft tissue, the standard medical procedure is not to get rid of the entire limb, but to cut out areas of exposure, thereby creating cavities in the bones [1]. These defects should be filled with bio-compatible material, which is able to help the bone to reconstruct [2]. The motivation, and the goal of this work, was to design an algorithm to help design such porous structures. Aperiodic structures were taken under the closer look, since the literature on this type of model is relatively scarce [3, 4]. A feature of the resulting algorithm should be the easy modifiability of all kinds of parameters, such as the porosity of the structure, or the thickness of the trabeculae from which it is built. Our analysis was based on structures with 30 % and 80 % porosity. In addition to the algorithm design, the paper focuses on printing the designed structures and analyzing them. 2. Materials and methods 2.1. Porous structure Porous structures in the materials environment are a frequently addressed topic. Periodic structures with uniform distribution are most famous in the literature. However, aperiodic structures are an interesting as- pect, as the literature provides much less information on them. The way to create this type of elements that was chosen is Voronoi diagrams [5]. Figure 1 shows this kind of structure. It is characterized by the fact that each point of the polygon, is closer to its own center (the so-called Voronoi center) than any other. Figure 1. Example of Voronoi structure. 2.2. Used software Several tools were used in this work. The first, used at the beginning of the design process, was Rhinoceros (Robert McNeel & Associates, v.7.3.21039.11201, USA) with the built-in block development environ- ment Grasshooper (designed by David Rutten, Robert McNeel and associates, February 2021, Build 1.0.0007, USA). By this softwares a structure was created, with variable parameters. Another program that was used is Netfabb 2022 27 https://doi.org/10.14311/APP.2023.42.0027 https://creativecommons.org/licenses/by/4.0/ https://www.cvut.cz/en R. Grabiec, J. Tarasiuk, S. Wroński Acta Polytechnica CTU Proceedings (Autodesk, ver. 2023.1, USA). This program was used during cutting the designed structures into a set num- ber of sections for further analysis. In the next step, which was 3D printing, it is nec- essary to prepare the structure for printing process. For this purpose, the Prusa Slicer (Prusa Research, ver. 2.6.0, Czech Republic) application, dedicated to the printer, was used, which allowed to see the pre- dicted printing parameters such as printing time, layer thickness or filament application accuracy. The last program used in this work was ImageJ2 Fiji (Johannes Schindelin, Ignacio Arganda-Carreras, Albert Cardona, Mark Longair, Benjamin Schmid, ver. 1.48g, LOCI, University of Wisconsin). This soft- ware is used for image analysis. In our case to calculate the parameters of the obtained porous structures. 2.3. Structuring algorithm It was necessary, to design an algorithm, used to create aperiodic structures. 2.3.1. Algorithm The algorithm was built in Grasshooper software by means of blocks, performing specific functions. It consisted of a couple of main sections: creating the shape of the model, parameterizing it, and converting it to a filled structure. The first section, which is visualized on Figure 2 opens with the creation of a cube on which the struc- ture will be based. Then the distribution of points in the volume of the cube was randomly selected. Based on the obtained points, a 3D Voronoi diagram was built on them, and then only the edges (trabeculae) were isolated from it. In this way, the target shape of the structure was obtained. Figure 2. Creation of a Voronoi diagram on points, drawn in a cube. In the next section, parameterization follows. The thickness of each trabeculae is selected, as well as the number of points into which the trabeculae is to be divided (a constraint, excluding errors). In addition, it is possible to select the number of Voronoi diagram centers, which strongly determine the porosity of the structure. This process were shown on Figure 3. Once the desired structure is produced, and the parameters are given, it remains to create a solid. To do this, Dendro add-on was used. A small volume (resembling a sphere) was built on each point into which the trabeculae were previously divided. These Figure 3. Parameterization and initial obtaining of the target structure. volumes were then smoothed and combined, resulting in a closed structure ready for export and analysis. We can see connecting and smoothing process on Figure 4. Figure 4. Smoothed, finished structure in the final version. 2.3.2. Issues In the way of block programming, there were also unexpected problems, which we can see on Figure 5. Some of the structures, went beyond their limits. This was caused by the fact that too many points fit into too small space. Figure 5. Structure escaping beyond its limits. This problem was solved by imposing limits on the number of points and the length of the trabeculae on the model. 2.3.3. Structural Supervision The finished structures were cut in Netfabb software as we can see on the Figure 6, and the resulting cross sections were loaded into ImageJ Fiji. Having the cross sections in the program it is possi- ble to check the porosity of the structure, including the average thickness of the trabeculae. Two func- tions of the BoneJ add-on were used for this purpose: 28 vol. 42/2023 Desing, print and analysis of modifiable porous structures Figure 6. Examples of cross sections obtained using the Slice function in Netfabb software. Figure 7. Example of a printed model Thickness and Volume Fraction. The average thick- ness of the trabeculae, we can see in the Table 1 and the porosity (the ratio of the amount of voids to the total volume of model) is shown in the Table 2. In Table 1 we observe twice the output value, because the measured value is the average diameter of the trabeculae, and the value set by the algorithm is the cross-sectional radius. In addition, the average is increased by nodes where multiple trabeculae meet. Such an analysis was carried out for a number of struc- tures, in order to see if we can arbitrarily vary the porosity. This kind of controlling the structure is possible. 2.4. Printing In order to create physical models of the designed structures, it was decided to use FDM 3D printing, one of the most popular incremental methods of this kind of process. It involves the gradual application of filament to a heated table, using a head heated to about 200 ◦C. The printer used is a Czech-made Prusa mk3. To the Prusa Slicer program, structures with porosi- ties of 30 % and 80 %, previously created with the algorithm, were imported. The print layer thickness was set to 150 µm, which guaranteed good print qual- ity. After viewing the predicted structure and making Thickness of trabeculae [mm] 0.25 0.5 0.75 1 1.3 Num. of Pts. Tb. Th. mean 500 0.5 1.09 1.67 2.27 3.05 450 0.49 1.09 1.66 2.25 3.02 400 0.49 1.08 1.65 2.23 2.99 350 0.49 1.08 1.64 2.21 2.95 300 0.48 1.07 1.63 2.19 2.92 250 0.48 1.07 1.62 2.18 2.89 200 0.47 1.06 1.61 2.15 2.85 150 0.46 1.05 1.59 2.13 2.81 100 0.45 1.04 1.58 2.11 2.78 50 0.42 1.02 1.56 2.08 2.72 Table 1. A table that checks whether the average thickness of the trabeculae corresponds to the thick- ness selected in the algorithm. Thickness of trabeculae [mm] 0.25 0.5 0.75 1 1.3 Num. of Pts. Porosity of model 500 0.94 0.77 0.57 0.38 0.19 450 0.94 0.78 0.59 0.41 0.22 400 0.95 0.80 0.62 0.44 0.25 350 0.95 0.81 0.64 0.47 0.29 300 0.96 0.83 0.67 0.51 0.32 250 0.96 0.85 0.70 0.55 0.37 200 0.97 0.87 0.74 0.60 0.43 150 0.97 0.89 0.78 0.66 0.51 100 0.98 0.91 0.82 0.72 0.59 50 0.99 0.94 0.88 0.81 0.72 Table 2. Table showing variation of porosity against change in number of Voronoi centers and thickness of beads. sure that the program did not find possible errors during model creation, printing proceeded. We can see an example of the structure at Figure 7. Printing time varied between 1 and 3 hours, de- pending on porosity. It turned out that during printing there were some problems. One of them, was the local sagging of the filament through lack of support. It was not used because, removing the filament from the center of this kind of stucture is impossible (leaving aside the possibility of using a multi-filament head, which the printer used was not equipped with). Another mistake was leaving tiny filamentr threads in the pores similar to spiderweb. This is due to a poor choice of head temperature, which pulls the filament too hot. However, they did not significantly affect the quality of the structures made. 29 R. Grabiec, J. Tarasiuk, S. Wroński Acta Polytechnica CTU Proceedings Project Printed Models Thickness [mm] Porosity [−] Number of points BV [mm3] TV [mm3] Porosity [−] Differential [%] 0.50 0.30 4350 5555 7833 0.29 3.06 0.50 0.80 400 1325 7620 0.83 3.26 0.75 0.30 1480 5376 7915 0.32 6.93 0.75 0.80 130 1413 8084 0.83 3.15 1.00 0.30 680 5639 8168 0.31 3.21 1.00 0.80 57 1561 8187 0.81 1.17 1.25 0.30 365 5474 8023 0.32 5.90 1.25 0.80 30 1818 7922 0.77 3.69 Table 3. Comparative table of porosity of the designed and printed model. 2.5. MicroCT verified of printed structures The structures made were subjected to analysis, which involved checking the porosity and average bead thick- ness of the computer-designed models, as well as those printed. For this purpose, a Nanotom S microtomo- graph was used. Each of the printed structures, was X-rayed. During the entire process, the X-ray tube operated at 100 kV and a current of 100 µA. The target resolution was set at 15 µm, making a single measurement take about 2 hours. The resulting cross sections, for further analysis, had to be edited. Editing, as well as further analysis, was performed in ImageJ Fiji software. The cross- sections were cropped as well as rotated appropriately, and then a median filter was performed. Figure 8 shows an example of a cross section after the editing process. Figure 8. Example of an edited structure cross-section. 3. Results The first step, was to use the Volume Fraction function, available in the BoneJ add-on again. After compiling the results and collecting them in a Table 3, it turned out that the discrepancy between the design and the physical model reaches a maximum of 7 %, which is a satisfactory result at this stage of the research. Any discrepancies are due to inaccuracies occurring during printing. Another goal of the analysis, was to collect data on the average trabeculae thickness of printed structures and their designs by using function thickness. As we see at the Table 4 this time the discrepancy reaches the level of a several dozen percent, which is not a very satisfying result. In this case, these discrepancies, are also due to problems during printing. The laid filament, formed into beads, has some kind of defects – small holes, which the filament did not reach during printing. We can see this kind of situation in Figure 9. On the other hand, in Figure 10, we can see the execution of the same function for the computer project. Figure 9. Example of visualization of Thickness function for printed model. Figure 10. Example of visualization of Thickness function for designed model. Due to such a sequence of events, the Thickness function sees the place where the defect appeared as two separate trabeculae, which underestimates the 30 vol. 42/2023 Desing, print and analysis of modifiable porous structures Project Printed Models Thickness [mm] Tb.th mean [mm] Tb.th std [mm] Tb.th mean [mm] Tb.th std [mm] Differential [%] 0.50 0.85 0.07 0.70 0.28 17.6 0.50 0.72 0.08 0.59 0.15 18.1 0.75 1.20 0.09 0.96 0.35 20.0 0.75 1.05 0.11 0.74 0.24 29.5 1.00 1.55 0.12 1.23 0.38 20.6 1.00 1.38 0.16 1.03 0.30 25.4 1.25 1.89 0.16 1.24 0.31 34.4 1.25 1.72 0.22 1.24 0.40 27.9 Table 4. Comparative table of the average thickness of the trabeculae of the designed and printed model. Figure 11. Graph of the average thickness of the trabeculae of the printed model. average result. In the Figure 11, we can see the his- togram of the distribution of the trabeculae thickness for the printed model, while for the model of the de- sign itself, it appears in the Figure 12. For the design, one selected thickness dominates, but there are also larger values, which is the reason for the places where the trabeculae connect (nodes), which by definition must be thicker. For the printed models we see that the distribution is almost symmetrical, and has many results that underestimate the average. This problem can be solved overestimating the thick- ness of the beam during the execution of the algorithm. With such a procedure, even after underestimating the result of thickness, it will be the target value. 4. Conclusions To summarize this work, it is worth noting that it was possible to create an algorithm, capable of creating porous structures with very easily modifiable porosity and average thickness of the beads. This algorithm in the future, after a number of improvements, could serve as an aid for the design of bone implants for each patient individually. In addition, it can be extended to design structures of any shape, not just a cube, which opens its way to many scientific but also busi- ness environments. The algorithm and the printing process itself require improvements. The results so Figure 12. Graph of the average thickness of the trabeculae of the designed model. far, however, and the ease with which they can be obtained, are satisfying. References [1] R. Ciaputa, E. Brambilla, F. Godizzi, et al. First report of primary testicular leiomyosarcoma in two dogs. BMC Veterinary Research 19(1):101, 2023. https://doi.org/10.1186/s12917-023-03658-5 [2] T. Goryń, B. Szostakowski, A. Pieńkowski. Advances in bone reconstructions after sarcoma resection. Oncology in Clinical Practice 14(6):331–340, 2019. https://doi.org/10.5603/ocp.2018.0046 [3] I. E. Ramirez-Chavez, D. Anderson, R. Sharma, et al. A classification of aperiodic architected cellular materials. Designs 6(4):63, 2022. https://doi.org/10.3390/designs6040063 [4] R. Moat, E. Muyupa, C. Imediegwu, et al. Compressive behaviour of cellular structures with aperiodic order. Results in Materials 15:100293, 2022. https://doi.org/10.1016/j.rinma.2022.100293 [5] G. Voronoi. Nouvelles applications des paramètres continus à la théorie des formes quadratiques. premier mémoire. sur quelques propriétés des formes quadratiques positives parfaites. Journal für die reine und angewandte Mathematik (Crelles Journal) 1908(133):97–102, 1908. https://doi.org/10.1515/crll.1908.133.97 31 https://doi.org/10.1186/s12917-023-03658-5 https://doi.org/10.5603/ocp.2018.0046 https://doi.org/10.3390/designs6040063 https://doi.org/10.1016/j.rinma.2022.100293 https://doi.org/10.1515/crll.1908.133.97 Acta Polytechnica CTU Proceedings 42:27–31, 2023 1 Introduction 2 Materials and methods 2.1 Porous structure 2.2 Used software 2.3 Structuring algorithm 2.3.1 Algorithm 2.3.2 Issues 2.3.3 Structural Supervision 2.4 Printing 2.5 MicroCT verified of printed structures 3 Results 4 Conclusions References