Tooling refinement
In this section we illustrate some ways to add details to a tooling. The first step in our refining process is to ensure that all parts have consistent geometry and texture coordinates. Next, we enhance the meshes by adding textured details. At the end of the process, you will be able to export the high-resolution, detailed meshes.
Digital tooling textures
Digital texturing is the process with which you can apply displacement textures to parts of a mold, this will give a richer visual appearance to the part. In this guide we will guide you through the creation process starting from an existing product to a textured one.
At the start, you may have a collection of geometries, some of which might not be meshes. For more consistent results,
we recommend converting the geometries you intend to refine into meshes using the PangolingMesh command, available
through the Pangolin plug-in, which can be downloaded via the Rhino Package Manager. Alternatively in Botcha we
added a command (B_MeshBrep) that will allow you to obtain similar results on platforms where pangolin is not
available or via grasshopper automation.
Once we have a number of meshes we want to add proper texture coordinates to them. Using the B_Unwrap
command on each mesh we will obtain a flattened version that we can visualize in the UV editor panel
.
Keeping in mind that any change made to the UV mesh in this panel will affect how the texture is mapped onto the geometry.
At this stage, we can apply digital textures. Opening the Botcha digital textures panel will show the list of the available
digital textures that you can apply to your model. Here you can also manage the textures by adding, deleting and filtering the
textures. Double-clicking the preferred texture and then the mesh you want to apply it to will properly scale it and tile it
on the target mesh.
The applied Digital texture modifier will appear on the Modifiers property page. A more refined result can be achieved by increasing the number of subdivisions. However, if you want to keep your model lightweight you can set high Export subdivisions. This way, detailed tooling will only be generated at export time.
Info
You want to keep in mind that, depending on the initial edge length you used you can easily calculate how large each triangle will be. This may be important to then achieve a proper target resolution. In general you can refer to this table to calculate how big each triangle will be
| Subdivisions | 2mm edge length | 1mm edge length |
|---|---|---|
| 1 | 1.0 mm | 0.5 mm |
| 2 | 0.5 mm | 0.25 mm |
| 3 | 0.25 mm | 0.125 mm |
| 4 | 0.125 mm | 0.063 mm |
| 5 | 0.063 mm | 0.031 mm |
| 6 | 0.031 mm | 0.015 mm |
Once the texture is applied you can tweak its properties from the modifier panel, this includes adding an automated edge fading that will generate a ramp towards the edge of the mesh that allow you to have a smooth transition between different meshes and textures. The fading is automatically generated via edge detection and the resolution depends on the pixel density that you specified in the options.
Fade maps can also be edited and they will automatically update once you save them to disk. We treat each texture as a normal rhino texture so that expert users can easily access the data.
Low poly displacement baking
To do this, first use _ShrinkWrap to generate a unique mesh from multiple geometries.
Now, with B_DrawCrvOnMesh
command you can mark your tooling mesh with lines
you want to be respected when remeshing.
We typically suggest to use the curve created as parameter in the _QuadRemesh command, which is the next step in
the workflow. This is a standard feature of Rhino since 7 and can be controlled via curves. We suggest to use the
previously created curves to generate edge loops so you will have some nice seams to cut the mesh with.
Once the remeshing is complete, we need to assign clean and regular texture coordinates to the new mesh, since that
is essential to ensure a correct transfer of details. That means flattening the mesh into non-overlapping 2D islands.
Before unwrapping, we need to unweld the parts of the mesh that should be separated during the flattening process.
This is where the edge loops created during remeshing become useful.
Use the _UnweldEdge command to disconnect the edges that will serve as cutting seams for the mesh.
You can double-click an edge to quickly select the entire edge loop.
After our mesh has been unwelded properly we want to use the B_Unwrap
command
from either the toolbar or the UV editing panel. Here you can set several options on how big the canvas size should be
and how many iterations to use. You should keep the option Divide=SplitAtDoubleEdges to get the proper split on the
edges that we unwelded.
Now it's time to transfer all the details from the original geometries onto the new mesh. Before doing so, apply the
Digital texture modifiers created earlier. Then run the B_BakeTexture command on the new mesh, selecting as
target geometries all the detailed tooling meshes and surfaces and keeping the option Action=Apply. All the details
will be baked on an image and a new Rhino Texture will be created. The target mesh will be modified through a displacement
operation based on the generated texture. Since we chose Action=Apply, a displacement modifier will already be applied.
B_BakeTexture command output image. Intermediate levels of black and white stay for the amount of displacement on the 3D geometry.
To achieve a high-quality displacement effect without overloading the model, we recommend adding a Multi Resolution modifier.
Displace modifier created by the command, combined here with a Multi resolution modifier to have better effects in details visualization.
Some details of the final result.
Your tooling is now complete—detailed, optimized, and ready to be used in your next steps, whether it's rendering, 3D-printing, or manufacturing.










