Skip to content

CURVE mode

Press 5 (or Tab from PATCH — it toggles between the two). CURVE is where mesh density actually comes from, and where you split a patch into something the fill can handle.

A curve is one boundary segment of a built patch — one CAD edge, fitted as a line or an arc. It is CAD truth: rigid, refit onto the surface. You do not move it, you decide how it is sampled, and the interior follows.

Built patches only

CURVE works on patches that really exist in the mesh. Fill first (PATCH), then tune.

Spans and contour

Gesture Effect
LMB / Shift+LMB / Ctrl+LMB select / add / remove curves
LMB drag box-select curves (front-facing only — nothing hidden behind the shell)
Alt+LMB select the tangent chain — the curves that continue the clicked one smoothly in the CAD, arcs and straights alike (below). Shift+Alt adds
Shift+G select every curve like the hovered one
Shift+Wheel span — segment count of the selected curves, ±1
Ctrl+Wheel contour — redistribute the samples, count unchanged
Alt+Wheel core span — the interior tube between the two selected curves, ±1 (below)
E type the spans — digits, Enter; every selected curve lands on that exact count
F reset the selected curves (span + contour) back to computed; a joined curve goes back to its pieces
Shift+F join the selected pieces of a broken curve into one (below)
Ctrl+C / Ctrl+V copy the span of the curve under the cursor / paste it onto the selected curves as an exact count

Select Similar here matches by what a curve is: the same segment type, open or closed alike, and the same length within a tolerance (F9 to widen it). A closed ring's length stands in for its radius, so "all the rims of this bore size" is one keystroke — and it works on OBJ imports too, no CAD oracle needed. The result replaces the selection; accumulate with Shift+LMB.

That pairs with the wheel and E: Shift+G the run of same-size rims, then one gesture tunes them all — the finer-grained sibling of the PATCH-mode mass tweak.

The copy reads the hovered curve, so the selection stays the paste target.

Tangent chains

Alt+LMB on a curve selects every curve that continues it smoothly in the CAD: through each junction where exactly one other curve carries on tangent (within 10°). It is the chain a CAD package calls tangent chain — a fillet's edge running arc → straight → arc is one chain, the way it reads on the part.

  • The walk judges the CAD curve itself, not the current span dots, so the same click selects the same chain before and after you retune its spans.
  • A corner stops it, and so does a fork — a point where two curves both continue smoothly. The chain never guesses a branch, so it is the same whichever of its curves you click.
  • It runs through patches you have not built yet, so a run is not cut in two by a gap in the fill; only the curves of built patches end up selected.

Ctrl+Alt+LMB is the separate ring select (parallel profiles), unchanged. One buffer per session, shared with the PATCH-mode U/V copy (PATCH); nothing under the cursor or an empty buffer → Blender's own Ctrl+C / Ctrl+V.

Span is the count. It propagates to every patch sharing that curve, and the weld between them is preserved — that is the point of tuning at the boundary rather than inside one patch.

Contour is the distribution: bunch samples where the curve bends, thin them where it runs flat. Orthogonal to span, so the two never fight.

CAD seams. The seam of a wrapped CAD surface (a cylinder wall, a revolved band) appears as a curve once the patch is built. On a tube its count is the axial row count; on a smart-filled wall it is the lattice's own row count along the seam, and the fill lays its banks at exactly that — the number you see is the geometry. The first span notch takes the seam over from there (rows on a tube, banks on a wall); X on such a seam puts it back to automatic — every seam of that patch together.

By default spans are not guessed from radius but from silhouette error: a curve gets the count that holds its chord within an absolute tolerance of the true arc. Small arcs stay cheap, large arcs stay round, and the result does not change when the model's overall size does. The tolerance is the SILHOUETTE_TOL setting, expressed in the CAD's own working units (0.05 by default — 0.05 mm on a millimetre-authored model).

Joining a curve cut in pieces

A CAD curve often arrives in pieces: a face split in the CAD and glued back, an edge the author never rebuilt. Each piece is a curve of its own with its own span, and the break stays a vertex in the mesh.

Select the pieces end to end, press Shift+F. They become one curve on every patch that shares them, laid evenly along the whole length, and one span wheel or E tunes it. The joined curve stays selected. A flat stub at the end of an arc (a fraction of a millimetre the CAD left at a fillet's end) counts as part of the arc.

  • A third patch keeps its corner. Usually the face across was split at the same point, so a patch there has a corner on the curve. The joined curve takes a vertex at that point for it, and the seam stays closed — no T-junction.
  • F takes it apart. On a joined curve, F gives back the pieces with their own settings. Undo works both ways.
  • Covers work as usual. A cover over the patches around the break reads the joined curve as one; X on the cover gives the join back as it was.

Refused, with the reason in the HUD line:

Refusal Why
the curve turns at the break a real corner, not a break
a straight meets an arc two curves by kind; a straight stays a straight
no patch runs through four patches meet at the point
two breaks a hair apart a sliver between them; later
a frozen patch, a cover's side, a ring unfreeze it; a cover's side is one curve already; a ring keeps two breaks

Ring anchor

A closed ring — a bore rim, a round hole — has no natural start point, so its sampling can begin anywhere, which shows up as a rotated vertex ring.

  • A — hover the ring, press: the anchor lands on the ring sample nearest the cursor.
  • Alt+A — clear the anchor of the hovered ring, or all of them when hovering nothing.

Bridge exports carry no parametric seam for rings, so this is a manual call by design.

Region split

This is not a cut

C does not slice geometry like a modelling loop cut. It draws a region curve: a new boundary that partitions the patch. Each region is then classified and filled on its own and welded at the seam — so both sides can come back different from what was there before, by design.

That is how a face with a cut-out or an awkward feature gets a sane result: not one heuristic covering everything, but a smaller, honest problem on each side. Expect "re-decide both sides", not "an edge loop appeared".

C arms the split. Hover a built patch and the chord previews live, perpendicular to the mesh flow.

While armed Effect
LMB commit it — and stay armed for the next one
C toggle auto ⊥ chord ⇄ 2-point mode
Ctrl+Wheel spin the auto chord off perpendicular
Shift+Wheel span count of the next split
Ctrl (held) snap the chord's end to the nearest boundary vertex (sticky)

In 2-point mode each click snaps to the nearest boundary span vertex and the curve runs strictly between them. A tube (a closed wall with two rims) takes no split — its fill is a bridge that ignores cuts, and C says so instead of storing a dead one.

X deletes a selected region curve. Only your own committed ones are deletable — a CAD curve stays put and the operator says so.

De-feature

Some detail is not wanted as geometry at all: a shallow pocket or a notch that will be baked into the normal map, a boss you optimise away, a slot the low-poly does not need. Filling it and covering it later leaves its topology inside the cover. De-featuring it — the CAD term for exactly this — takes it out of the topology: its curves and its patches are gone, and the face around is built as if nothing had ever been cut there.

Select curves of the feature, press Alt+F. (In PATCH mode Alt+F is Cover; one key, the mode decides.) The patches around must be built. One curve of an outline is enough — everything it cuts off from the rest of the part goes; curves of several features remove them all at once.

What the picked curves close:

You pick Result
a closed loop on a face — a pocket, a boss, a hole's rim the hole in that face closes
an open run — a notch or a groove that runs out of a face the face's edge is restored across the gap: the interrupted edge continued (a straight stays straight, an arc keeps its curve), otherwise a straight between the run's ends
a slot or a hole through the part, picked on one face that face closes; the walls stay, so from the other side it reads as a blind hole. Pick the other face's curves too (now or later) and that side closes, taking the walls with it

Only what you pick closes. The far side of a through-hole stays open unless you pick it, or switch on Close the far side (N-panel → Fill options, off by default) to close both faces with one pick.

The closed face is a cover: one live patch with the face's own fill, spans and seams, so everything a cover does works on it. X on it brings the feature back exactly as it was; undo works both ways. A face that is already under a cover can host a removal too — the cover is made again with the feature taken out.

Closing a gap

Closing a slot that cuts through an edge of the part can leave an opening that no CAD face covers: the top and the chamfer the slot split end at its walls, and the walls are gone. Two ways to close it, both with the same Alt+F:

  • The face whole — when the opening sits between two flat halves of one face (the halves the slot split), select both halves in PATCH mode and press Alt+F, or pick the opening's edges in CURVE mode. The halves and the gap become one cover: one fill and one UV chart, as if the face had never been split. On the low-poly there is no gap, so there is no seam either.
  • A free patch — any other flat opening: pick the curves around it (a closed chain, or open runs that are joined end to end and closed by a straight). A patch with no CAD face behind it is laid there, filled with triangles (Quad works too; Loft and Smart fill need a CAD surface under the patch and say so), selectable and removable like any patch. Keep it for real holes: where the opening only parts two halves of one face, the face whole above is the clean result.

Only flat openings close this way for now.

Refusals are loud — a coloured line in the HUD block on the left says what was not understood (a curve that bounds nothing, a hole's wall picked alone, a selection in two places).

Side roles and core span

When you want a quad highway through a patch instead of a graded fill, mark the sides:

Panel button Meaning
Flow this side feeds the quad core verbatim
Relief this side absorbs the transition
Clear remove the role

Two opposite Flow sides plus a core span route the patch to the quad-highway fill. Roles are per patch: the shared curve keeps its seam contract and the neighbour is unaffected.

Core span sets the patch's interior resolution directly. Select the two opposite curves you want to reduce, run it: both are marked Relief, the boundary is kept verbatim, and an N-span interior tube is joined to each selected curve through a transition band. The seam still welds at full boundary resolution — nothing is sub-split behind your back.

Alt+Wheel does the same from the wheel. The number reads on the pair as core N next to the span labels: it starts at the pair's own span and only goes down from there — the core reduces, it never grows past the sides, and at the pair's span the patch simply fills plain again. The core belongs to that pair: pick the other pair of the same patch, Clear the roles, or F-reset one of its curves, and it starts over from the new pair's span.

Where the gesture cannot apply it says so — a coloured line in the HUD block on the left, not just the status bar: the selection must be two curves of one patch, and the two other sides (the caps the interior grid runs between) must carry equal spans — Shift+Wheel them equal first. That equality is a limit of the highway grid, kept on purpose.