Create a tool that will accept a very thin (scaled down), or "surface only" (tessellated model) and "fill in" behind the surface to a sufficient depth to allow printing on a 3-D printer.
When scaling down a 3D object, some features can either become too small for a 3D printer to print or too fragile for handling afterwards. We address this issue by enforcing a minimum wall thickness throughout the interior of the solid.
If the input file describes a 2D surface – such as a tessellated polygon mesh – the program begins by scaling the surface to the desired printing dimensions, and generating an interior wall with a uniform minimum thickness (user defined, >1mm). If a feature of the surface has a narrow region, the offset interior wall will intersect the interior (and possibly the exterior) of another wall. Identifying the locations where the interior walls intersect gives the problematic locations for 3D printing. At this stage the program will prompt the user to decide which of the unsettled features to keep and which to remove. If a feature is marked for conservation, the areas where its interior walls breach the exterior of the surface are treated as exterior walls, and a smoothing function is applied to the breach point to eliminate hard lines. Similar smoothing operations are applied to the sites where the extraneous features were removed.
Similarly, if the input file describes a 3D solid – either voxelated or built up from primitives in a constructive geometry – the program generates the same scaled model as before, with one exception: final product is the union of the uniform wall model and the scaled version of the original 3D solid. Unlike the 2D surface, the “possibly” hollow cavity of the 3D solid is described. Rather than discarding the information about the interior of the solid, the program preserves the areas where the interior thickness is greater than the minimum lower bound.
In situations where the uniform-walled solid requires further support, the hollow cavity can be reinforced in a topologically optimal fashion to maximize the overall strength to weight ratio of the solid. Initially the program fills in all the hollow cavities of the solid, and prompts the user to specify the required forces. A FEM physics simulator can model the loads imposed by the forces, and identify the points under high and low stresses. One way to reach the topologically optimal configuration for supporting the solid involves iteratively removing the volume around the points of low stress, and shifting the remaining volume to the points under high stress.
Mathematica