Infill¶
In this section, I describe how I created a filler similar to the material commonly used in orthopedic insoles. For this experiment, I used Grasshopper to gain greater control over the point grid of the filler.
3D Mesh for the Sole¶
Plantar Peak Pressure Points While Walking¶
To absorb the impact while walking, it was essential to identify the plantar pressure points that help reduce the load on the foot. A key resource in this process was a video from the YouTube channel Oficina Paramétrica by Leonardo Gindri, an architect and urban planner, in which he uses Grasshopper to design a sole that enhances impact resistance. This knowledge served as a starting point for me, so I turned to baropodometry studies to analyze the areas where I exert the most pressure during the most critical moments of my gait.
Tutorial:
My process
Experimentation in Grasshopper¶
In this stage, I conducted various tests to create a fill pattern based on a repetitive module within the 3D grid I had previously designed.
To achieve this, I developed modules using Solid Mesh in Grasshopper, considering its natural resistance as the main premise. I also created a module in Rhinoceros, which had great strength due to its cubic connection with the other elements. Additionally, I explored the creation of 3D grids using Grasshopper’s Preset Cell tool, which allowed me to generate a wide range of iterations to optimize the fill structure of my sole.
I also explored the networks generated with the Preset Cell tool, using modules like Grid, X, or Star. These configurations created a homogeneous network but lacked pressure points, so I decided to discard them. Additionally, their dimensions were too light and could break easily. Maybe, when I gain more experience with this type of network, I will be able to customize them better.
I printed several sections of the sole to speed up the testing process, following the recommendation of my instructor, Nuria. One of my first prints, which included only the heel part, took approximately four hours to complete. For this reason, I will choose to print only specific sections and categorize them based on their flexibility and foot support.
Filament Selection and Printing Setup¶
At this stage, the standard (green) filament turned out to be too soft, so I had two options: design a stronger link or try a different material. Fortunately, my colleague Raúl helped by providing me with JAYO TPU Silk filament, which has silk-like properties, offering greater flexibility.
According to its specifications, this filament can be printed without heating the platform if adhesive is used (glue can be unheated). Without adhesive, the recommended bed temperature is 60-80°C. It also has a ±0.03 mm tolerance and a 1.75 mm diameter, compatible with the nozzle I used.
For both filaments, I set the following printing temperatures: Nozzle: 230°C Print bed: 70-80°C No retraction and low speed to prevent deformations in the part’s geometry.
I used two 3D printers for this process: Ultimaker S3 with Ultimaker Cura for small parts. Prusa XL with its default slicing software for larger parts. One important note: the Prusa XL does not allow printing open-curve geometries, so the model must be completely closed before printing.
Printing and Evaluation of the Fill Structure¶
I printed several fill samples and encountered issues with the most resistant option. Therefore, I decided to use the fill generated from a Solid Mesh in Grasshopper (the first) to print the first sole and assess its comfort, dimensions, and resistance.
The result was a very comfortable sole. I would describe it as the sensation of stepping on sand since it adapts perfectly to the shape of my foot. However, there are several aspects that need improvement:
Aspects to Improve: The module lacks the necessary rigidity to support walking, as it deforms excessively. It has no structural flexibility, which causes it to break easily. The dimensions in the toe area are too large, while in the heel area, they are exact. However, it would be advisable to enlarge them slightly to account for the thickness of the upper part of the shoe.
Favorable Aspects: Excellent ergonomics, as it adapts well to the shape of the foot. Good material fusion; both are TPU but with different levels of rigidity: the green one is standard TPU, while the white one is TPU Silk, which is more rigid while maintaining its flexibility.
Results¶
From these results, I concluded that structure (module mesh) needed to be revisited and corrected, as it contained errors due to being an open mesh. This structure was the most optimal for achieving both flexibility and resistance while also providing effective absorption of pressure points when walking. Below, the different iterations of geometries generated in Grasshopper can be observed. The ones created using the Preset Cell tool were discarded because their structures were too weak. I ultimately decided to retain the material fusion approach, strategically placing different materials in specific areas of the shoe for optimal performance.
For the final sole design, I corrected the previous issues, starting by adjusting its dimensions.
Then, I researched the differences between mesh and surface in Rhino and found a forum where the same question was discussed.
The difference between mesh and surface lies in their mathematical structure and application in 3D modeling:
Mesh
Composed of a set of vertices, edges, and faces (polygons, usually triangles or quadrilaterals).
A discrete approximation of a shape, useful for video game modeling, 3D printing, and physical simulations.
Has a lighter and easier-to-process structure but is less precise for complex geometries.
Lacks mathematical continuity; it is simply a collection of connected flat faces.
Surface
Based on NURBS (Non-Uniform Rational B-Splines), allowing for a smooth and continuous mathematical representation.
Used in industrial design and CAD, as it enables precise curves and parametric edits.
Ideal for organic surfaces and high-precision manufacturing.
Can be converted into a mesh for applications like 3D printing, but the mesh quality depends on triangulation resolution.
Once I understood this difference, I realized that the module had to be composed entirely of either surfaces or meshes. If working with surfaces, it was necessary to convert them into mesh using the "To NURBS" tool, ensuring that the module remained completely closed within the sole's network in Grasshopper.
Final adjustments¶
To manufacture the final sole, I focused on two aspects: correcting the ergonomic issues, which were only related to size, and adjusting the module I wanted to use. To achieve this, I verified the following points:
-
The module's meshes must always be ready for 3D printing, meeting specific conditions to prevent errors.
-
These meshes, known as "watertight meshes" or "manifold meshes", must be completely closed.
-
The mesh normals must be oriented outward.
-
There should be no intersecting or overlapping faces.
-
There should be no duplicated elements.
-
Once these criteria were verified, the module worked correctly within the parametric design in Grasshopper.
Final result¶
-
File: Sole Grasshopper ↩
-
File: Rhino Meshes ↩