|On this page|
The Project SOP creates profile curves (also known as trim curves or curves-on-surface) by projecting a 3D face onto a spline surface, much like a light casts a 2D shadow onto a 3D surface.
There are two projection methods: along a vector, or mapping the face directly onto the parametric space of the surface.
After a Project node you will often want to…
Use a Trim SOP to cut a hole in the projected surface (as shown above).
Use a Bridge SOP to skin the profile curve to another profile curve.
Use a Profile SOP to extract the curve on surface or remap its position.
Additional Operations for Profile Curves
To delete a projected curve, use a Delete SOP, and enter the profile number (e.g. 1.4 returns the fifth profile on the second primitive (counting starts at 0) ). You can visualize the number of the profiles by enabling the Profile Number icon in the Viewport Display options.
You can group the profile curves with a Group SOP. Do this by typing the profile numbers in the Pattern field. You can use all regular expressions.
When applying transformations to a profile in the Primitive SOP, you can only rotate about the Z axis because the projected curve is a planar curve that lives in the domain of the surface. Therefore it wouldn’t make any sense to allow rotations in X or Y for profiles.
Connect them into a Project op: Circle to Input1; Tube to Input2.
Append a Trim SOP to the Project node. It trims the surface according to the projection provided by the Project node. You need to append a Trim node to a Project node to get this trimming.
Turn on the template flags on the Circle and Tube nodes; make the Project op the display op.
The: Minimum Distance option is extremely useful, say in the following situation: You have a NURBS surface of a head, and you want to obtain a NURBS patch by projecting a hairline onto the head’s surface. You could:
Template the NURBS head.
Enable the "Snap to Template" option in the Model Editor (Snap options).
Draw a NURBS curve along the surface of the head where you want the hairline.
Then, with the Project op, you select the Minimum Distance option, and you have a profile curve with which you can trim the surface of the head to obtain the patch.
Thus having obtained a NURBS patch for the scalp, you could use it as the source, say for the Emit pop to grow a particle system in order to produce hair.
Subset of faces (NURBS,Bezier,polygons) to project.
Subset of spline surfaces to project on.
Ways of choosing projection order and sequencing:
All faces on each surface in sequence
In the given domain interval
All faces on each surface overlapping
In the given domain interval
One face per surface: Cycled
One face per surface, cycled until all surfaces have been traversed
Faces are projected along a 3D vector
Vector along which to project the faces: X, Y, Z, user-defined, or minimum distance to the surface
x,y,z components of projection vector
What side of the surface to project the face on:
On the first side encountered in either direction
On the last side encountered in either direction
Divisions Per Span
Number of 3D points evaluated in each span
Precision of ray-surface intersection
Precision of 2D fitting algorithm
Max UV Gap (%)
Percentage of domain to join 2 profiles
Spline order of resulting profile curve
Preserve Sharp Corners
Enable or disable fitting of sharp turns in curve
Use a very accurate, yet time consuming algorithm
Direct conversion of 3D CVs to domain points
Which of X,Y,Z must be mapped to the U parameter
Which of X,Y,Z must be mapped to the V parameter
Map Profile to Range
Constrain the profile to the domain range below:
Area of the unit U domain to be mapped on
Area of the unit V domain to be mapped on
Uniform or chord length based conversion