Go to: Synopsis. Return value. Flags. Python examples.
detachSurface(
surface
, [caching=boolean], [constructionHistory=boolean], [direction=int], [keep=boolean], [name=string], [nodeState=int], [object=boolean], [parameter=float], [replaceOriginal=boolean])
Note: Strings representing object names and arguments must be separated by commas. This is not depicted in the synopsis.
detachSurface is undoable, queryable, and editable.
The detachSurface command detaches a surface into pieces, given a list
of parameter values and a direction. You can also specify which
pieces to keep and which to discard using the "-k" flag.
The names of the newly detached surface(s) are returned. If history
is on, the name of the resulting dependency node is also returned.
You can only detach in either U or V (not both) with a single detachSurface operation.
You can use this command to open a closed surface 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.
string[] | Object name and node name |
In query mode, return type is based on queried flag.
caching, constructionHistory, direction, keep, name, nodeState, object, parameter, replaceOriginal
Long name (short name) |
Argument types |
Properties |
|
direction(d)
|
int
|
|
|
Direction in which to detach:
0 - V direction,
1 - U direction
Default: 1
|
|
keep(k)
|
boolean
|
|
|
Keep the detached pieces.
Default: true
|
|
parameter(p)
|
float
|
|
|
Parameter at which to detach.
Default: 0.0
|
|
Common flags |
constructionHistory(ch)
|
boolean
|
|
|
Turn the construction history on or off.
|
|
name(n)
|
string
|
|
|
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.
|
|
object(o)
|
boolean
|
|
|
Create the result, or just the dependency node.
|
|
replaceOriginal(rpo)
|
boolean
|
|
|
Create "in place" (i.e., replace).
|
|
Advanced flags |
caching(cch)
|
boolean
|
|
|
Modifies the node caching mode. See the node documentation for more information.
Note: For advanced users only.
|
|
nodeState(nds)
|
int
|
|
|
Modifies the node state. See the node documentation for more information.
Note: For advanced users only.
|
|
Flag can appear in Create mode of command
|
Flag can appear in Edit mode of command
|
Flag can appear in Query mode of command
|
Flag can have multiple arguments, passed either as a tuple or a list.
|
import maya.cmds as cmds
cmds.detachSurface( 'surface1', ch=True, d=1, p=0.3, rpo=False )
cmds.detachSurface( 'surface1.u[0.3]', ch=True )
# Detaches surface1 into two pieces at u = 0.3.
# The results are two surface pieces, and a detachSurface dependency node.
# Since no "-keep" flag is used, all pieces are kept.
cmds.detachSurface( 'surface1', ch=True, k=(1,0), rpo=False, p=0.34, d=0 )
cmds.detachSurface( 'surface1.v[0.34]', ch=True, k=(1,0), rpo=False )
# Detaches surface1 at v = 0.34. Because of the "k" flags, two
# surfaces are created but the second surface is empty. A
# detachSurface dependency node is also returned.
cmds.detachSurface( 'surface1', ch=True, rpo=True, p=(0.2, 0.5), d=1 )
cmds.detachSurface( 'surface1.u[0.2]', 'surface1.u[0.5]', ch=True, rpo=True )
# Detaches surface1 into three pieces. Because of the "-rpo" flag,
# the first surface piece is used to replace the original surface1.
# The results are the three surfaces (including the original surface).
# Even though the "ch" flag is on, a dependency node is not created
# if surface1 is not a result of construction history. If surface1
# is the result of construction history, then a dependency node is
# created and its name is returned.
cmds.detachSurface( 'cylinder1', ch=True, d=0, p=0.3, rpo=False )
# Detaches cylinder1, which is periodic in V, where the V parameter
# ranges between 0.0 and 8.0. The parameter, 0.3, is used to move
# the start point of the cylinder, also known as the "seam".
# The resulting surface's V parameter range is 0.0 to 0.3.
cmds.detachSurface( 'cylinder1', ch=True, d=0, p=(0.3, 0.7), rpo=False )
# Detaches cylinder1, which is periodic in V, where the V parameter
# ranges between 0.0 and 8.0. The 1st parameter, 0.3, is used to move
# the start point of the cylinder, also known as the "seam".
# The second parameter, 0.7, is used to detach the cylinder again.
# The result is only TWO surfaces; the first surface's V parameter ranges
# from 0.0 to 0.3. The second surface's V parameter ranges from 0.3 to 0.7.