The detachCurve command detaches a curve into pieces, given a list of parameter values. You can also specify which pieces to keep and which to discard using the “-k” flag. The names of the newly detached curve(s) is returned. If history is on, then the name of the resulting dependency node is also returned. You can use this command to open a periodic curve at a particular parameter value. You would use this command with only one “-p” flag. If you are specifying “-k” flags, then you must specify one, none or all “-k” flags. If you are specifying all “-k” flags, there must be one more “-k” flag than “-p” flags.
Long name (short name) | Argument Types | Properties | |
---|---|---|---|
caching (cch) | bool | ||
|
|||
constructionHistory (ch) | bool | ||
|
|||
curveOnSurface (cos) | bool | ||
|
|||
keep (k) | bool | ||
|
|||
name (n) | unicode | ||
|
|||
nodeState (nds) | int | ||
|
|||
object (o) | bool | ||
|
|||
parameter (p) | float | ||
|
|||
replaceOriginal (rpo) | bool | ||
|
Derived from mel command maya.cmds.detachCurve
Example:
import pymel.core as pm
import maya.cmds as cmds
pm.detachCurve( 'curve1', ch=True, p=0.2, replaceOriginal=False )
# Detaches curve1 at parameter value 0.2. The
# result is two curves and a detachCurve dependency node.
# The "-rpo" flag specifies that the original curve is not to be
# replaced; as a result a new curve is created for each curve piece.
# Note that if "k" flag is not used, then the default is that
# all pieces are kept.
pm.detachCurve( 'curve1.ep[1]', ch=True, replaceOriginal=False )
# Detaches curve1 at its second edit point.
pm.detachCurve( 'curve1.u[0.2]', ch=True, replaceOriginal=False )
# Detaches curve1 at parameter value 0.2
pm.detachCurve( 'curve1', ch=True, p=0.4, k=(1 , 0), rpo=False )
# Detaches curve1 at parameter value 0.4 into two curves. Because of
# the "k" flags, two curves are created, but the second one is empty.
# A detachCurve dependency node is also returned.
pm.detachCurve( 'curve1', ch=True, p=(0.2, 0.4), rpo=True )
# Detaches curve1 into three pieces. Because the "rpo" flag is on,
# the original curve is replaced with the first piece. The names
# of all curve pieces are returned. If curve1 is a result of history,
# then a dependency node is created and its output is connected as
# the input to curve1. If curve1 is not a result of construction
# history, then a dependency node is not created (even though the
# "ch" flag is on).
pm.detachCurve( 'circle1', ch=True, p=(0.2, 0.4) )
# Detaches a periodic curve, circle1, at two places. Before
# the detach, the circle is periodic, with a start parameter of 0.0,
# and an end parameter of 8.0.
# The first parameter, 0.2, is used to move the start point of the curve,
# also called the "seam". The second parameter, 0.4, is used to perform
# a detach operation. The result is TWO curves only. The first curve
# has a parameter range of 0.2 to 0.4. The second curve has a parameter
# range of 0.4 to 8.2.