pymel.core.modeling.rebuildSurface¶
- rebuildSurface(*args, **kwargs)¶
This command rebuilds a surface by modifying its parameterization. In some cases the shape of the surface may also change. The rebuildType (-rt) attribute determines how the surface is rebuilt. The optional second surface can be used to specify a reference parameterization.
Flags:
Long Name / Short Name Argument Types Properties caching / cch bool Modifies the node caching mode. See the node documentation for more information. Note:For advanced users only. constructionHistory / ch bool Turn the construction history on or off. degreeU / du int The degree of the resulting surface in the u direction 0 - maintain current, 1 - linear, 2 - quadratic, 3 - cubic, 5 - quintic, 7 - heptic Default:3 degreeV / dv int The degree of the resulting surface in the v direction 0 - maintain current, 1 - linear, 2 - quadratic, 3 - cubic, 5 - quintic, 7 - heptic Default:3 direction / dir int The direction in which to rebuild: 0 - U, 1 - V, 2 - Both U and V Default:2 endKnots / end int End conditions for the surface 0 - uniform end knots, 1 - multiple end knots, Default:0 fitRebuild / fr int Specify the type of rebuild method to be used: 0 - Convert Classic, the default and original convert method. 1 - Fit using the least squares fit method. 2 - Convert Match, alternate matching convert method. 3 - Convert Grid, uses a grid-based fit algorithm. Default:0 frozen / fzn bool keepControlPoints / kcp bool Use the control points of the input surface. This forces uniform parameterization unless rebuildType is 2 (match knots) Default:false keepCorners / kc bool The corners of the resulting surface will not change from the corners of the input surface. Default:true keepRange / kr int Determine the parameterization for the resulting surface. 0 - reparameterize the resulting surface from 0 to 1; 1 - keep the original surface parameterization; 2 - reparameterize the result from 0 to number of spans Default:1 name / n unicode Sets the name of the newly-created node. If it contains namespace path, the new node will be created under the specified namespace; if the namespace does not exist, it will be created. noChanges / nc bool nodeState / nds int Modifies the node state. See the node documentation for more information. Note:For advanced users only. Flag can have multiple arguments, passed either as a tuple or a list. object / o bool Create the result, or just the dependency node. polygon / po int The value of this argument controls the type of the object created by this operation 0: nurbs surface1: polygon (use nurbsToPolygonsPref to set the parameters for the conversion)2: subdivision surface (use nurbsToSubdivPref to set the parameters for the conversion)3: Bezier surface4: subdivision surface solid (use nurbsToSubdivPref to set the parameters for the conversion) rebuildType / rt int The rebuild type: 0 - uniform, 1 - reduce spans, 2 - match knots, 3 - remove multiple knots, 4 - force non rational 5 - rebuild ends 6 - trim convert (uniform) 7 - into Bezier mesh Default:0 replaceOriginal / rpo bool Create in place(i.e., replace). Advanced flags spansU / su int The number of spans in the u direction in resulting surface. Used only when rebuildType is 0 - uniform. If 0, keep the same number of spans as the original surface. Default:4 spansV / sv int The number of spans in the v direction in resulting surface. Used only when rebuildType is 0 - uniform. If 0, keep the same number of spans as the original surface. Default:4 tolerance / tol float The tolerance with which to rebuild Default:0.01 Common flags Derived from mel command maya.cmds.rebuildSurface
Example:
import pymel.core as pm # rebuild the surface using uniform parameterization # The rebuilt surface will have 5 spans in u and # 10 spans in v pm.rebuildSurface( rt=0, dir=2, su=5, sv=10 ) # rebuild the surface by removing its redundant spans pm.rebuildSurface( rt=1 ) # rebuild the surface by matching the u parameterization # of another surface. surface1 is the surface to rebuild # surface2 is the reference surface pm.rebuildSurface( 'surface1', 'surface2', rt=2, dir=0 ) # rebuild the surface by removing all multiple interior knots pm.rebuildSurface( rt=3 ) # rebuild the surface using uniform parameterization pm.rebuildSurface( rt=4 )