You can use vector projected curves for trimming.
Trimming a surface with a vector projected curve
If the projection intersects the surface in two or more locations, the intersection closest to the seed point is the one that creates the curve.
To create a vector projected curve:
The NURBS object must contain at least one surface and one curve.
The initial vector direction is in the view direction. That is, the vector points away from you as you look at the viewport. If the curve can be projected onto the surface in this direction, the projection curve is created. The original, parent curve can go "off the edge of the surface." The projection curve is created only where the projection and the surface intersect.
In viewports a gizmo (yellow by default) indicates the projection axis. Transforming the gizmo changes the projection onto the surface. Rotating the gizmo is the most useful transform. You can use rotation to adjust the distortion caused by projection.
When on, trims the surface against the curve. When off, the surface isn’t trimmed.
If it's impossible to trim with this curve, the surface is displayed in the error color (orange by default). For example, the curve is unusable for trimming if it neither crosses the edge of the surface nor forms a closed loop.
When on, trims the surface in the opposite direction.
Change the UV location of the seed value on the surface. If there is a choice of projections, the projection closest to the seed point is the one used to create the curve.
When on, trims the surface against the curve. When off, the surface isn’t trimmed.
If it's impossible to trim with this curve, the surface is displayed in the error color (orange by default). For example, the curve is unusable for trimming if it neither crosses the edge of the surface nor forms a closed loop.
When on, trims the surface in the opposite direction.
Change the UV location of the seed value on the surface. If there is a choice of projections, the projection closest to the seed point is the one used to create the curve.
Let you replace the parent sub-objects. Click a button, then click a curve or surface to replace the original parent object.