cncfoam.com can import a 3D model — an .stl or .obj file — and automatically work out a hot-wire cut that reproduces it as closely as a hot wire physically can. This page explains exactly what that means, why the result is an approximation rather than a perfect copy, and how to get the best out of it.
What STL and OBJ files are
STL and OBJ are the two most common ways to store a 3D model as a mesh — a skin made of thousands of little triangles. Almost every 3D program exports them: Blender, Fusion 360, SketchUp, FreeCAD, TinkerCAD, ZBrush, and every model you download from sites like Thingiverse or Printables. cncfoam.com reads both (binary and ASCII STL, and OBJ vertex/face data); it only needs the triangles, so materials, colours and textures are ignored.
The catch: a hot wire only makes straight cuts
A hot-wire cutter drags a straight, taut wire through the foam. Every surface it can create is therefore a ruled surface — a shape you could sweep with a straight line. That is wonderful for wings, cones and tapered columns, but it means a hot wire can never reach into a pocket, carve an overhang, or hollow out an enclosed cavity. So no foam cutter can reproduce an arbitrary 3D model exactly. What it can reproduce is the model's visual hull.
The visual hull (shape from silhouette)
Imagine standing the model on a turntable and shining a light at it from the side. The shadow it casts is its silhouette from that angle. Now turn it a little and take another silhouette, and another, all the way around. If you cut away everything that falls outside every silhouette, what is left is the visual hull — the tightest solid that casts all those same shadows. That is precisely what a hot wire builds when it cuts one profile, rotates the foam, cuts the next, and so on. It is the same idea as space carving in computer vision and the way a sculptor blocks out a figure by checking it from several sides.
cncfoam.com does this for you: it slices your model into a set of silhouettes around the rotation axis, turns each one into a cut profile, and loads them as indexed rotation stages. The on-screen carve then shows the actual solid the wire would leave behind.
What comes out well — and what does not
- Reproduced faithfully: rounded, convex or faceted shapes — wings, cones, gems, bottles, busts, vases, rockets, simple animals.
- Softened: fine surface detail and tight concave curves get rounded off, more so with fewer angles.
- Lost entirely: holes, hidden pockets, undercuts, overhangs and anything the wire cannot see from outside in some silhouette — these fill in solid, because a straight wire cannot reach them.
Step by step
- Open + Load parts in the tool.
- Click Import STL / OBJ and choose your file.
- Read the pop-up — it summarises the limitations and, importantly, lets you choose the rotation axis and the number of cut angles.
- Click Generate stages. The model is fitted into your material block and sliced into silhouettes, which load as rotation stages.
- Click Generate cut to build the tool-path and watch the foam carve down to the visual hull.
- Not happy with the orientation? Use the Rotate part buttons in the status panel to spin the model 90° and it re-slices automatically.
Choosing the rotation axis — this matters a lot
The single biggest factor in quality is which axis the foam spins around. Spin the model around its longest, most-detailed axis.
- Vertical (around Y) suits upright shapes: busts, bottles, columns, trees, chess pieces.
- Horizontal (around Z, the depth axis) suits long shapes lying down: fish, aircraft, blades, boats, cars.
Pick the wrong axis and the silhouettes barely change as the model turns, so the hull stays blobby and loses detail. The import pop-up lets you choose before slicing, and you can always re-import on the other axis to compare.
How many angles?
More angles means more silhouettes, a tighter hull and a longer real-world cut. For almost everything, 12 angles is plenty and the hull barely improves past about 24–36. A perfect cylinder is the rare exception that keeps benefiting from more. There is no point asking for 360 one-degree steps on a normal part — it just multiplies the cutting time for no visible gain.
Performance
Each angle adds a Boolean (solid intersection) step to the live 3D preview. cncfoam.com runs that heavy maths in a background worker, so even high angle counts will not freeze the tool — you will see a small "Carving… stage x/y" note while it works. The G-code itself is happy with any number of stages.
Current limitations
- Holes: if a silhouette has a hole in it (a doughnut seen edge-on, the eye of a wrench), only the outer outline is cut for now — the hole fills in. Multi-contour silhouettes are on the roadmap.
- One material block: the model is scaled uniformly to fit your current block size. Set a sensible block first (Material block, left panel).
- Visual hull only: as above, anything the wire cannot reach from outside is filled.
Background & further reading
The technique here is the same one used in 3D scanning and computer vision under the names shape from silhouette, visual hull and space carving. It is also why a turntable photogrammetry rig and a multi-axis foam cutter face the same fundamental question: how many views do you need, and around which axis? If you understand the visual hull, you understand the limits of every silhouette-based reconstruction — including this one.
See also: Indexed rotation cuts, Rotating a part's starting position, and What is cncfoam.com?