An ambigram is a solid that reads as one word from the front and a different word from the side — the two words share the same lump of foam, just seen from 90° apart. cncfoam.com's ✨ GEN's → Ambigram tool builds one automatically from two words you type, ready to cut on a rotation rig.
The idea: a visual-hull cut
Stand a block of foam up on a turntable. Cut the silhouette of WORD 1 straight through it. Rotate the block 90° and cut the silhouette of WORD 2 straight through it. What survives both cuts — the intersection of the two silhouettes — is the ambigram. Look down the first axis and you read word 1; look down the second and you read word 2.
This is the same shape-from-silhouette principle the STL/OBJ importer uses, but with exactly two silhouettes that happen to be words. Each pass is an ordinary hot-wire profile cut; the rotation between them is an indexed move on the A (ROT) axis.
Using the generator
- Open ✨ GEN's and choose the Ambigram tab.
- Type two words, up to 7 characters each. Short, bold words read best.
- Pick a font — heavy display faces (Arial Black, Impact, slab serifs) give thick strokes that survive the intersection. Thin or script fonts tend to vanish where the two words overlap.
- Hit Generate. The tool sets your machine to 5-axis vertical rotation, frames a material block at 90% of your cutter, drops the part on the floor dead-centre, and loads a two-stage 90° cut.
- Press ▶ Play to watch it cut, and read each word in the floating block-side viewers.
What happens under the hood
Each word is rendered in your chosen font, the letters are joined to a thin base bar (so the whole word is one connected piece), and every enclosed counter — the hole in an O, A, P, e — is slit open to the edge with a hairline cut. A hot wire is a continuous loop; it cannot drop into a closed hole, so it has to slit in, trace the hole, and slit back out. The generator adds those slits for you, exactly like you would by hand in Inkscape.
The finished outline is emitted as a clean SVG path and run through the same sampler an uploaded .svg uses, so the cut you get is identical in quality to a hand-drawn file. Both words are rendered at one shared size so their letters are the same height and the intersection fills top-to-bottom.
Reading and cutting it
- Front view (down the depth axis) shows word 1; side view (down the tower axis) shows word 2. The two floating block-side windows show each silhouette as it will cut.
- It is a rotation cut, so you need a rig with an indexed A (ROT) axis — a turntable or trunnion — not a plain 2-axis or 4-axis cutter. On screen it runs as a 5-axis job.
- Scale the whole part afterwards in the Object bar like any other shape; the proportions and registration are preserved.
What a hot wire can and cannot do
Because the result is the intersection of two silhouettes, the space between the letters of one word is not always open — wherever the other word has a stroke at that depth, foam stays there. That is the nature of a true ambigram: the two readings share material. Very thin strokes, tight serifs and letters with lots of enclosed holes (B, 8) are the hardest to keep legible. If a word comes out mushy, try a heavier font, a shorter word, or all-caps.
Related
See Rotation axis & indexed cuts for how the A-axis staging works, The 3D solid carve for how the live preview is computed, and the GEN's generator for the wing and column tools.