pymel.core.modeling.polySplitEdge

polySplitEdge(*args, **kwargs)

Split Edges.There are two operations for this command depending on the value of the -operation flag. If -operation is set to 1 then this command will split apart faces along all selected manifold edges. If -operation is set to 0 then this command will split non-manifold edges so as to make them manifold edges. It creates the minimum number of edges that can be created to make the edge manifold. The default value for -operation is 1, operate on manifold edges. Resulting mesh may have extra vertices or edges to ensure geometry is valid.

Flags:

Long Name / Short Name Argument Types Properties
caching / cch bool ../../../_images/create.gif ../../../_images/edit.gif
  Toggle caching for all attributes so that no recomputation is needed.
constructionHistory / ch bool ../../../_images/create.gif ../../../_images/query.gif
  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 ../../../_images/create.gif
  Give a name to the resulting node.
nodeState / nds int ../../../_images/create.gif ../../../_images/query.gif ../../../_images/edit.gif
  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.
operation / op int  
   

Derived from mel command maya.cmds.polySplitEdge

Example:

import pymel.core as pm

# An example taking a non-manifold edge and splitting it to
# make it manifold
pm.polyPlane( w=1, h=1, sx=10, sy=10, ax=(0, 1, 0), cuv=1, ch=1 )
pm.scale( 15, 15, 15, r=True )
pm.move( -8, 0, 6, r=True )

pm.select( 'polyPlane1', addFirst=True )
pm.setAttr( 'polyPlane1.subdivisionsWidth', 3 )
pm.setAttr( 'polyPlane1.subdivisionsHeight', 3 )
pm.select( 'pPlane1.e[12]', r=True )
pm.polyExtrudeEdge( 'pPlane1.e[12]', ch=1, kft=0, pvx=-5.5, pvy=0.0, pvz=6.0 )
polyExtrudeEdge1
pm.setAttr( 'polyExtrudeEdge1.localTranslate', 0, 0, 5.093611)
pm.select( 'pPlane1.e[12]', r=True )
pm.polySplitEdge(op=0)
polySplitEdge1

# The edge is now split..
pm.select( 'pPlane1.f[9]', r=True)
pm.move(0, 0.5, 0, r=True)


# An example which splits loops of manifold edges
pm.polyPlane(w=10, h=10, sx=4, sy=4, ch=1, name='ManifoldTest')
pm.select('ManifoldTest.e[3]', 'ManifoldTest.e[12:15]', 'ManifoldTest.e[21]', 'ManifoldTest.e[23]', 'ManifoldTest.e[29]')

pm.polySplitEdge(operation=1)

pm.select('ManifoldTest.f[1:3]', 'ManifoldTest.f[5]', 'ManifoldTest.f[9]')
pm.move(0, 0, 5, r=True)

pm.select('ManifoldTest.f[0]', 'ManifoldTest.f[4]', 'ManifoldTest.f[6:8]', 'ManifoldTest.f[10:15]')
pm.move(0, 0, -5, r=True)