Curvesect
surface node
Finds the intersections (or points of minimum distance) between two or more curves or faces.
This node finds the intersections or the points of minimum distance between two or more faces (polygons, Beziers, and NURBS curves) or between faces and a polygonal or spline surface.
Examples
Circles
-
Place two NURBS Circle SOPs, one of them slightly offset in X and Y (not Z).
-
Pipe their outputs into a Curvesect SOP, make it the display SOP.
-
Method: Cut. For the Left Face, select Keep Odd-numbered Ones.
-
You can extract the inside (even) or outside (odd) portion of the curve where they intersect.
Star
-
Model a closed NURBS curve in the shape of a star.
-
Place a NURBS Circle SOP.
-
Pipe them into a Curvesect SOP, make it the display SOP.
-
It produces five independent NURBS curves based on their intersection with the NURBS circle.
-
You could append a Join SOP to reconnect the individual NURBS curves into a new continuous curve. It smoothly connects the remaining segments.
Creeping behavior along a Path
-
Place a new Font SOP and then a Circle SOP. Type: NURBS, Radius 0.1, 0.1; Center -3, 0.3, 0.2. Font op, Text: “Creep Along Me”.
-
Append a Curvesect SOP with the Font and Circle SOPs feeding into the first and second inputs respectively. Change the Tolerance to 1.0, and enable the Extract operation. Turn off Find All Intersections. Make it the display SOP.
-
Enable the template flags on the Font and Circle SOPs (use ⇧ Shift click).
-
Home the view, and enable the Point display in the Viewport options.
-
As you change the Circle’s X value from -3.0 to 3.0, you will notice that a number of points will creep along the paths of the curves within the text. Using a Copy SOP to copy geometry to each of these points gives you a simple way of creating an irregular “flocking behavior” along predetermined paths.
This works, because as the circle moves above the curves in the text, the points in the curves that are closest to the circle move also.
-
You can model a curve instead of using a Font op to model several NURBS curves which are the paths to follow for more precise control over the motion.
Parameters
|
Face Group |
Subset of faces (NURBS,Bezier,polygons). |
|
Cutter Group |
Subset of faces or spline surfaces to intersect with. |
|
Find All Intersections |
Compute intersection points if the faces touch the cutter primitive. If the toggle is off, only the point of minimum distance will be found. Finding the minimum distance between a face and a surface is not available currently. |
|
Tolerance |
Precision of intersection. |
Cut
|
Overview |
Cut the faces where they intersect or at the points of minimum distance. |
||||||||
|
Left-face Pieces |
Choose what parts of the left faces to keep:
|
||||||||
|
Right-face Pieces |
Choose what parts of the right face to create:
|
Extract
|
Overview |
Extract intersection points or isoparms. |
||||||
|
Affect |
Choose which input to operate on:
|
||||||
|
Extract Point |
If the right input is a surface, choose between point and isoparm extraction; only points are extracted if the right input is a face. |
||||||
|
Keep Original |
Preserve the left input faces or delete them. |
Example files
CurvesectRods
$HFS/houdini/help/examples/nodes/sop/curvesect/CurvesectRods.cmd
This example demonstrates the two functions of the Curvesect SOP, cut and extract.
It also illustrates how these two functions can be applied to an animation at the SOP and POP levels.
The information extracted by the Curvesect SOP during geometry collisions will be used to drive particle birth.
Usages in other examples
| Example name | Example for |
|---|