Houdini 20.0 Nodes Geometry nodes

Spline Surfsect geometry node

Trims or creates profile curves along the intersection lines between NURBS or bezier surfaces.

On this page

This op performs boolean operations with NURBS and Bezier surfaces, or only generates profiles where the surfaces intersect. The individual surfaces do not need to be solids (i.e. wrap in U and V), nor do they need to form a solid as a group (for example, you can cut a grid with a sphere).

The surfaces in the first input are denoted by “A” in the parameter list. The surfaces in the second input are denoted by “B”. The entire A set is intersected with the B set, which allows for true csg operations with spline surfaces. Thus, if A forms a solid and B forms a solid, any boolean operation between A and B will produce a solid. If either set has an open topology, the result will also be open.

What is deemed to be the inside and outside of a trim region depends on the direction of the surface normals. If necessary, use the Primitive SOP to reverse the surface normals by reversing the surface’s U or V direction.


Group A

Subset of NURBS and Bezier surfaces

Group B

Subset of NURBS and Bezier surfaces to intersect with A

3D Tolerance

World space precision of the intersection

2D Tolerance

Domain precision of the intersection

Marching Steps

Number of steps for tracing each profile span



Boolean operations between the surfaces in A and B


Union, intersect, A - B, B - A, or user-defined:

Keep Inside A

Preserve the inside sections of the A surfaces

Keep Inside B

Preserve the inside sections of the B surfaces

Keep Outside A

Preserve the outside sections of the A surfaces

Keep Outside B

Preserve the outside sections of the B surfaces

Generate Profiles


Just create profiles where the surfaces intersect


Which surface to output profiles for: A, B, or both

A Profiles Group

Place the A profiles in a user-defined group

B Profiles Group

Place the B profiles in a user-defined group

Avoid Already Trimmed-Out Parts

Intersect only the visible surface parts and truncate the intersection profile at the trimmed-in surface boundaries.

Join Profiles Created By Multiple Surfaces

If a surface has several adjacent profiles caused by its intersection with two or more surfaces, the profiles will be joined into a single curve-on-surface


SurfsectBasic Example for Spline Surfsect geometry node

This example demonstrates the use of the Surfsect SOP’s boolean operation.

First a box is used to subtract from a Sphere leaving 4 disks. Then the Sphere is used to subtract from the Box leaving just the corners.

See also

Geometry nodes