# Strength Enhancement in Fused Filament Fabrication via the Isotropy Toolpath
## 3 Materials and Methods
### Path Design  
This section presents a detailed explanation of constructing the in-plane isotropy toolpath by randomizing the XY-plane vector toolpath. In the meantime, the in-plane toolpath maintains a continuous deposition path that avoids the filament's potential discontinuity that causes the low strength. In addition, each layer generates a different toolpath pattern, which reduces the possibility of creating porosity. Finally, the proposed toolpath performance is compared with linear, linear with rotational angle, contour toolpath strategies printed under the same layer thickness.  
Algorithm 1 presents the in-plane isotropy toolpath generation by randomizing the vector toolpath and avoiding the intersection. Since continuous and randomized deposition is the desired in-plane manufacturing strategy, the toolpath generation should follow the prerequisites. The toolpath for randomized deposition can be easily determined; however, such randomized path planning can create collision and intersection of these paths. Algorithm 1 first determines a straight path with n nodes that allows being expanded later. These n nodes can be allocated with a random vector to re-allocate their position, the connection between connecting nodes will be updated. These updated paths will keep expanding until the whole area of the 2D sliced geometry is fulfilled.  
```
Input: Any given 3D model, Building Orientation, Layer thickness, loading direction Output: Series of layer-wised toolpath
1. 3D model = \(\sum\) slice\({}_{\text{i}}\)(i = \(1,2,\dots,\) #layers in the geometry)
2. \(\overline{AB}\) = max\(\_\)length (slice) along with tensile test loading direction
3. Initialize n particles on \(\overline{AB}\), allow norm (\(\overline{AB_{n-1}}\), \(\overline{AB_{n}}\)) = length(\(\overline{AB}\))/n
4. sphere\({}_{\text{n}}\) = radius (\(\overline{AB_{n}}\), r)
5. sphere\({}_{\text{n-1}}\) \(\cap\) sphere\({}_{\text{n}}\) = \(\varnothing\)
6. max = boundary(slice\({}_{\text{i}}\))
7. Initialize n particles with randomized vector \(\vec{k_{n}}\)
8. new(\(\overline{AB_{n}}\)) = \(\overline{AB_{n}}\) + \(\vec{k_{n}}\) *U
9. Update sphere\({}_{\text{n}}\)
10. End until boundary (\(\sum\) sphere\({}_{\text{n}}\)) = max
```  
**Algorithm 1**Generation of in-plane isotropy toolpath.  
For any given 2D geometry, the toolpath satisfies the following condition:  
1. \(\underline{\text{point}_{i}}=\underline{\text{point}_{j-1}}\) + \(\overrightarrow{n}\), \(\underline{\text{point}_{i}}\), \(\underline{\text{point}_{i-1}}\) are on the toolpath, \(\overrightarrow{n}\) is random
2. \(\overline{\text{point}_{i-1}},\overline{\text{point}_{i}}\) \(\cap\)\(\overline{\text{point}_{p-1}},\overline{\text{point}_{p}}\) = \(\varnothing\), \(\delta\)cp are random  
Since the toolpath width is not uniform in the proposed the vectorized toolpath from Algorithm 1, the extrusion rate for the process input is necessary. Algorithm 2 shows the deposition volume along the path, and the deposition volume can then be converted to the extrusion rate.  
The extrusion rate, which varies with traveling time to maintain the minimum pores for the proposed toolpath is introduced in Algorithm 2. We can easily calculate the path volume between connecting nodes on the continuous path based on the desired path width, distance, and layer height. However, this path volume is not a constant value for the proposed continuous isotropy toolpath. Thus, the extrusion rate needs to be varied for such traveling to maintain the least amount of pores that the path planning could potentially introduce.