Convex Hull

Compute the convex hull enclosing a set of points, or decompose the shape into the convex parts that cover it.

What it does

Convex Hull finds the smallest convex shape enclosing its input. Shapes, point clouds, and mesh geometry are all treated as a set of points, and the hull snaps tight to the outermost of them.

Every connection on Geometry is merged before the hull is computed, so several separate pieces can be wrapped in one boundary. Output Mode chooses a flat closed outline or a solid triangulated volume. With Fill unconnected the hull takes its surface from the input rather than rendering as flat grey.

When to use it

ParameterTypeDefaultWhat it does
geometryAnyListShapes, Points, or Geometry to compute convex hull of
fillColor or Color Field or Color[] or Field or Material or Material[] or Frame Sequence—Fill color, or connect a Fill/Color/Image node
modeString"Hull"Hull: one convex shape enclosing the input. Decompose: the convex parts that cover it — an L-shape becomes two boxes rather than one that swallows the notch. One of: Hull, Decompose.
concavityNumber0.050How much concavity a part may keep, as a fraction of its own size. A part is accepted once its deepest point lies no further than this below its own hull. Lower splits further.
max_partsNumber32Most parts to produce. The decomposition always stops on its own once every part is convex enough; this bounds a pathological input.
output_modeString"Path"Path: closed polygon outline (2D). Mesh: filled triangulated hull. One of: Path, Mesh.
dimensionString"Auto"Auto: detect from geometry (flat input → 2D). 2D/3D: force the algorithm. One of: Auto, 2D, 3D.

Gotchas

A 3D hull always comes out as a mesh, whatever Output Mode says. Output Mode set to Path only produces a flat outline when the hull itself is computed in 2D.

Dimension defaults to Auto, which reads whether the input is flat. A flat input hulls in 2D, anything with depth hulls in 3D. A 2D shape carrying even a tiny amount of z-depth can switch Auto to a 3D hull, so force 2D when you need a guaranteed flat outline.

With Fill disconnected the hull inherits its surface from the first input wired in: wrap two coloured circles and the hull comes out that colour instead of neutral grey. Connect something to Fill to override that.

Worked example

  1. Add a Convex Hull and connect a scatter of points, a shape, or a mesh to Geometry.

  2. Connect a second shape to Geometry as well. Both merge into one wrapped boundary.

  3. Set Output Mode to Path for a flat outline, or Mesh for a solid wrapped volume.

  4. Leave Dimension on Auto for most cases; force 2D or 3D if you need a specific result.

  5. Connect a Color or Image node to Fill to override the inherited surface.

See also

Connect Points · Mesh · Sphere · Geometry (meshes)