|On this page|
Revolve a curve
Revolve multiple curves
Revolving multiple curves at the same time will merge the curve into a single object.
There are special handles available at the geometry level for the revolved curve object that allow you to change the rotation axis.
Subset of primitives to revolve around the axis specified by Origin and Direction.
Origin of the axis around which to revolve.
Direction of the axis around which to revolve.
Number of edges to create around the circle of revolution.
When this is Closed, the input curves will be revolved in a full, closed circle around the axis. When this is Open Arc or Closed Arc, the input curves will be revolved in a circular arc between the two angles given by Start End Angle, with an extra point on the axis to close the loop in the case of Closed Arc.
Start End Angles
When Revolve Type is Open Arc or Closed Arc, this specifies the angles between which the circular arc should pass. When Revolve Type is Closed, the start angle alone is used to determine an overall rotation around the axis.
The surface topology to create for each curve’s grid. See the descriptions and image below.
Don’t create any primitives, only points.
Create a curve for each vertex in the input curves.
Create a curve for each division, plus one or two if Revolve Type is Open Arc or Closed Arc.
Rows and Columns
Create curves corresponding with both the Rows option and the Columns option.
Create triangles splitting the grid quads in a single direction.
Create the grid quads as is.
Create triangles splitting the grid quads in alternating directions.
Create triangles splitting the grid quads in a single direction opposite that of the Triangles option.
The type of primitive to output if Surface Type is not Points. When this is Automatic, polygons, NURBS surfaces, or Bezier surfaces are output, depending on whether the curves and cross sections are polygons, NURBS curves, or Bezier curves.
Ensure Unique Seam Vertices
If Surface Type is Rows, Columns, or Rows and Columns, and Revolve Type is Closed or Closed Arc or an input curve is closed, this option will add an extra vertex as needed to each curve to ensure that there are separate vertices for parametric curve u or v coordinate values 0 and 1. If any output primitives are polygon soups, NURBS surfaces, Bezier surfaces, or bilinear mesh primitives, this option similarly also adds any extra vertices that would be needed to ensure that all uv seams can be generated correctly. See the image below.
Swap Rows and Columns
When enabled, the order of the points and primitives in the grids will be adjusted to be column-major, having all points/primitives of one column before those of the next column, instead of the default row-major, having all point/primitives of one row before those of the next row. Toggling this also reverses normals, so Reverse Cross Sections may be useful to separately reverse normals.
Reverse Cross Sections
Toggle this on to reverse normals. When enabled, input curves primitives will be treated as if they were reversed, which has the effect of reversing normals on the surface.
When enabled and any input curves are open, this adds end cap polygons, NURBS curves, or Bezier curves to close the tube.
End Caps Group
When enabled, a primitive group with this name will be created, containing any primitives created by the End Caps option.
When enabled, a vertex
uv attribute will be generated for the output surfaces, based on the parameters below, if one isn’t already on the input. U corresponds with the input curve parametric coordinate, and V corresponds with the parametric coordinate around the axis. When Surface Type is Points, this will be a point
Override Any Existing UVs
When enabled, a vertex
uv attribute will be generated from scratch for the output surfaces, based on the parameters below, even if one is already on the input, instead of copying the UVs from the input.
When enabled, the individual U and V coordinate distances will be scaled, relative to other edges, by the corresponding edge lengths. When Normalize Computed Us and Normalize Computed Vs are on, U and V coordinates will still be scaled to be within the 0 to 1 range, but along the curves or cross sections, the relative lengths in UV space will be proportional to their lengths in physical space. See the image below.
Normalize Computed Us
When enabled, the U coordinate will be scaled to go from 0 to 1, (before UV Scale is applied). Otherwise, U will correspond with the average distance around the cross sections on the mesh, ignoring any stretch applied by Stretch Around Turns. Either way, U can be scaled by the first component of UV Scale. When this is enabled and Normalize Computed Vs is disabled, V will be scaled such that U and V appear scaled similarly in space, though depending on the Use Max Cross Section Length per Curve for Proportional Scale option. This is especially useful for things like applying repeating rope textures, where the texture should be applied isotropically. See the image below.
Normalize Computed Vs
When enabled, the V coordinate will be scaled to go from 0 to 1, (before UV Scale is applied). Otherwise V will correspond with either the average distance along the mesh in the V direction or the distance along the backbone curve, depending on the Use Mesh Edge Lengths instead of Curve Edge Lengths. When this is enabled and Normalize Computed Us is disabled, U will be scaled such that U and V appear scaled similarly in space. See the image below.
Make Computed Us Wrap Seamlessly
When Normalize Computed Us is disabled and this is enabled, the range of U is rounded to the nearest positive integer, in order for textures to wrap correctly in the U direction. This rounding is applied after the corresponding component of UV Scale is applied, so that UV Scale can still be approximately a scale per length unit for small geometry when both Normalize Computed Us and Normalize Computed Vs are both disabled. See the image below.
Make Computed Vs Wrap Seamlessly
When Normalize Computed Vs is disabled and this is enabled, the range of V is rounded to the nearest positive integer, in order for textures to wrap correctly in the V direction. This rounding is applied after the corresponding component of UV Scale is applied, so that UV Scale can still be approximately a scale per length unit for small geometry when both Normalize Computed Us and Normalize Computed Vs are both disabled. See the image below.
Flip Computed Us
When this is enabled, any computed U values will be replaced with
1-u if Normalize U is enabled and UV Scale has 1 for the first component), to avoid textures appearing backward. This should be on for textures to appear correct on surfaces viewed from the front, (i.e. normals pointing toward the camera), and should be off for textures to appear correct on surfaces viewed from the back, (i.e. normals pointing away from the camera). See the image below.
An additional scale on the generated UV coordinates. When Normalize U or Normalize V is on, the corresponding scale is applied after normalization. Otherwise, this scale is a scale per length unit, e.g. 0.5 would correspond with a period of 2 length units. If Make Computed Us Wrap Seamlessly or Make Computed Vs Wrap Seamlessly is enabled, the corresponding scale is applied before rounding to a positive integer number of repetitions of the U or V space, so that textures will still wrap correctly.
This example demonstrates the Revolve SOP’s ability to create geometry by spinning curves and surfaces around any described axis. Simple objects, such as a torus and a vase, are generated by the Revolve SOP and user-defined inputs.
This file also shows off how different geometry types react to different Revolve SOP parameter changes.