Difference between revisions of "Project SOP"

From TouchDesigner Documentation
Jump to: navigation, search
(TD Editor)
Line 18: Line 18:
 
 
 
If you end up with a profile curve that is not visible, it may still exist. Confirm a profile curve's existence by clicking on the SOP's info pop-up (using middle-mouse button).
 
If you end up with a profile curve that is not visible, it may still exist. Confirm a profile curve's existence by clicking on the SOP's info pop-up (using middle-mouse button).
+
{{SubSection
===<div class="subSectionLineSOP"> Additional Operations for Profile Curves </div>===
+
|title=Additional Operations for Profile Curves
+
|text=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 visualise the number of the profiles by enabling the Profile Number icon in the Viewport Display options.
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 visualise 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.
 
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.
Line 27: Line 26:
 
You can apply parametric affine transformations to the profile by using a [[Primitive SOP]]. You can also use the Primitive SOP to open, close, reverse, and cycle the profile curves.
 
You can apply parametric affine transformations to the profile by using a [[Primitive SOP]]. You can also use the Primitive SOP to open, close, reverse, and cycle the profile curves.
 
 
'''Note:''' 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.
+
'''Note:''' 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.
 +
}}
 
|OPlicense=Non-Commercial
 
|OPlicense=Non-Commercial
 
|OPfilter=True
 
|OPfilter=True
Line 74: Line 74:
 
{{Menuitem
 
{{Menuitem
 
|Itemname=cycled
 
|Itemname=cycled
|Itemsummary= This is the same as <span class="tipTextSOP">One Per Surface</span>, above, but starts the faces again if there are surfaces left.
+
|Itemsummary= This is the same as One Per Surface, above, but starts the faces again if there are surfaces left.
 
|Itemlabel=Cycled
 
|Itemlabel=Cycled
 
|OPfamily=SOP
 
|OPfamily=SOP
Line 131: Line 131:
 
{{Menuitem
 
{{Menuitem
 
|Itemname=other
 
|Itemname=other
|Itemsummary=Enables the <span class="tipTextSOP">Vector</span> fields immediately below to specify the X, Y, and Z components of the vector.
+
|Itemsummary=Enables the Vector fields immediately below to specify the X, Y, and Z components of the vector.
 
 
 
'''Note:''' When the '''Minimum Distance''' option is selected, the '''Side''' button becomes disabled because it's irrelevant for this projection type.
 
'''Note:''' When the '''Minimum Distance''' option is selected, the '''Side''' button becomes disabled because it's irrelevant for this projection type.
Line 188: Line 188:
 
{{Menuitem
 
{{Menuitem
 
|Itemname=farthest
 
|Itemname=farthest
|Itemsummary=The reverse of <span class="tipTextSOP">Closest</span>. In the example above, <span class="tipTextSOP">Farthest</span> would also yield two images if the curve is inside the tube, but it will choose the farthest side if the curve is outside the tube.
+
|Itemsummary=The reverse of Closest. In the example above, Farthest would also yield two images if the curve is inside the tube, but it will choose the farthest side if the curve is outside the tube.
 
|Itemlabel=Farthest
 
|Itemlabel=Farthest
 
|OPfamily=SOP
 
|OPfamily=SOP
Line 330: Line 330:
 
|OPtype=project
 
|OPtype=project
 
|OPfamily=SOP
 
|OPfamily=SOP
|Parsummary=This option is on by default. It causes the profile to be scaled and translated to fit within the surface's domain ranges described below. If this option is off, the profile's coordinates are mapped onto the surface domain without any transformation; consequently, the profile will not be visible if its points are not inside the domain of the target surface.<!--TDparEnd-->
+
|Parsummary=This option is on by default. It causes the profile to be scaled and translated to fit within the surface's domain ranges described below. If this option is off, the profile's coordinates are mapped onto the surface domain without any transformation; consequently, the profile will not be visible if its points are not inside the domain of the target surface.
 
Typically, the projected face should not be mapped to the U/V range if it was previously extracted from the same surface using the [[Profile SOP]] with the <span class="tipTextSOP">Parametrically to XY</span> option selected.
 
 
 
 +
Typically, the projected face should not be mapped to the U/V range if it was previously extracted from the same surface using the [[Profile SOP]] with the Parametrically to XY option selected.
 
The extraction and re-projection tandem can be very useful in achieving the modeling goals currently attainable only with 3D curves. Such tasks include the ability to edit the points of a profile, joining, stitching, or filleting profiles together, carving or refining profiles, etc. By extracting a profile parametrically to XY, Touch creates a 3D face that is identical to the 2D profile but has an additional (constant) Z component.
 
The extraction and re-projection tandem can be very useful in achieving the modeling goals currently attainable only with 3D curves. Such tasks include the ability to edit the points of a profile, joining, stitching, or filleting profiles together, carving or refining profiles, etc. By extracting a profile parametrically to XY, Touch creates a 3D face that is identical to the 2D profile but has an additional (constant) Z component.
 
 
Line 401: Line 400:
 
|Itemsummary=Mapping takes into account the surface parameterization and attempts to compute a projection best suited to the spatial and parametric determinants of the model.<!--TDitemEnd-->
 
|Itemsummary=Mapping takes into account the surface parameterization and attempts to compute a projection best suited to the spatial and parametric determinants of the model.<!--TDitemEnd-->
 
 
If the face is not mapped to range, it's vertices will be transferred to the profile without any transformation. Use this technique together with the parametric extraction in the Profile SOP to edit the points of a profile generated by a SOP other than Project: extract, edit the points, then project again.
+
If the face is not mapped to range, it's vertices will be transferred to the profile without any transformation. Use this technique together with the parametric extraction in the Profile SOP to edit the points of a profile generated by a SOP other than Project: extract, edit the points, then project again.
 
|Itemlabel=Chord Length
 
|Itemlabel=Chord Length
 
|OPfamily=SOP
 
|OPfamily=SOP

Revision as of 15:17, 24 May 2018

  • Invalid title: ""

Summary
[edit]

The Project SOP creates curves on surface (also known as trim or profile curves) 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 by mapping the face directly onto the parametric space of the surface.

You will usually need a Trim SOP, Bridge SOP, or Profile SOP after a Project SOP. For example, in the case of a Trim SOP we might have:

TouchGeometry146.gif

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.

If you end up with a profile curve that is not visible, it may still exist. Confirm a profile curve's existence by clicking on the SOP's info pop-up (using middle-mouse button).

Additional Operations for Profile Curves[edit]

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 visualise 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.

You can apply parametric affine transformations to the profile by using a Primitive SOP. You can also use the Primitive SOP to open, close, reverse, and cycle the profile curves.

Note: 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.

PythonIcon.png[[{{{opClass}}}]]

Template:ParMiniMenu Template:ParMiniMenu Template:ParMenu

Parameters - Page

Template:ParMenu Template:ParFloat Template:ParMenu Template:ParInteger Template:ParFloat Template:ParFloat Template:ParFloat Template:ParInteger Template:ParToggle Template:ParToggle


Parameters - Page

Template:ParMenu Template:ParMenu Template:ParToggle Template:ParFloat Template:ParFloat Template:ParMenu

TouchDesigner Build:

SOPs
Add • Alembic • Align • Arm • Attribute Create • Attribute • Basis • Blend • Bone Group • Boolean • Box • Bridge • Cache • Cap • Capture Region • Capture • Carve • CHOP to • Circle • Clay • Clip • Convert • Copy • CPlusPlus • Creep • Curveclay • Curvesect • DAT to • Deform • Delete • Divide • Extrude • Facet • File In • Fillet • Fit • Font • Force • Fractal • Grid • Group • Hole • Import Select • In • Introduction To SOPs id • Inverse Curve • Iso Surface • Join • Joint • Kinect • Lattice • Limit • Line • Line Thick • LOD • LSystem • Magnet • Material • Merge • Metaball • Model • Noise • Null • Object Merge • Oculus Rift • OpenVR • Out • Particle • Point • Polyloft • Polypatch • Polyreduce • Polyspline • Polystitch • Primitive • Profile • Project • Rails • Raster • Ray • Rectangle • Refine • Resample • Revolve • Script • Select • Sequence Blend • Skin • Sort • Sphere • Spring • Sprite • Stitch • Subdivide • Superquad • Surfsect • Sweep • Switch • Text • Texture • Torus • Trace • Trail • Transform • Trim • Tristrip • Tube • Twist • Vertex • Wireframe • ZED

An Operator Family that reads, creates and modifies 3D polygons, curves, NURBS surfaces, spheres, meatballs and other 3D surface data.

A surface type in SOPs including polygon, curve (NURBS and Bezier), patch (NURBS and Bezier) and other shapes like sphere, tube, and metaball. Points and Primitives are part of the Geometry Detail, which is a part of a SOP.