pymel.core.modeling.polySoftEdge¶
- polySoftEdge(*args, **kwargs)¶
Selectively makes edges soft or hard. An edge will be made hard if the angle between two owning faces is sharper (larger) than the smoothing angle. An edge wil be made soft if the angle between two owning facets is flatter (smaller) than the smoothing angle.
Flags:
Long Name / Short Name Argument Types Properties angle / a float Smoothing angle. C: Default is 30 degrees. Q: When queried, this flag returns a float. caching / cch bool Toggle caching for all attributes so that no recomputation is needed. constructionHistory / ch bool Turn the construction history on or off (where applicable). If construction history is on then the corresponding node will be inserted into the history chain for the mesh. If construction history is off then the operation will be performed directly on the object. Note:If the object already has construction history then this flag is ignored and the node will always be inserted into the history chain. frozen / fzn bool name / n unicode Give a name to the resulting node. nodeState / nds int Defines how to evaluate the node. 0: Normal1: PassThrough2: Blocking3: Internally disabled. Will return to Normal state when enabled4: Internally disabled. Will return to PassThrough state when enabled5: Internally disabled. Will return to Blocking state when enabledFlag can have multiple arguments, passed either as a tuple or a list. worldSpace / ws bool This flag specifies which reference to use. If on: all geometrical values are taken in world reference. If off: all geometrical values are taken in object reference. C: Default is off. Q: When queried, this flag returns an int. Common flags Derived from mel command maya.cmds.polySoftEdge
Example:
import pymel.core as pm # Turn smooth shading on # Soft and hard edges are much easier to see with smooth shading on currentPanel = pm.getPanel(withFocus= True) if currentPanel != '': pm.modelEditor(currentPanel, edit=True, da='smoothShaded', dl='default') pm.polySphere(n= 'plg', sx= 15, sy= 10 ) # hard bottom pm.select( 'plgShape.e[0:59]', 'plgShape.e[135:194]', 'plgShape.e[255:269]', r=True ) pm.polySoftEdge( a=0 ) # smooth top pm.select( 'plg.e[75:134]', 'plg.e[195:254]', 'plg.e[270:284]', r=True ) pm.polySoftEdge( a=180 ) pm.select( 'plg' ) pm.polyOptions( ao=True, se=True ) # Set display mode back to wireframe (default mode) currentPanel = pm.getPanel(withFocus= True) if currentPanel != '': pm.modelEditor(currentPanel, edit=True, da='wireframe')