Go to: Synopsis. Return value. Related. Flags. Python examples.

Synopsis

deformer( selectionList , [after=boolean], [afterReference=boolean], [before=boolean], [components=boolean], [deformerTools=boolean], [exclusive=string], [frontOfChain=boolean], [geometry=string], [geometryIndices=boolean], [ignoreSelected=boolean], [includeHiddenSelections=boolean], [name=string], [parallel=boolean], [prune=boolean], [remove=boolean], [selectedComponents=boolean], [split=boolean], [type=string], [useComponentTags=boolean])

Note: Strings representing object names and arguments must be separated by commas. This is not depicted in the synopsis.

deformer is undoable, queryable, and editable.

This command creates a deformer of the specified type. The deformer will deform the selected objects.

This command creates a deformer node and connects it to a deformation chain. If the deformer does not already exist, it is created. If the deformer already exists, the command lets you modify parameters on the named deformer. Unlike commands for specialized deformers, this command does not create or manage deformer-specific setups. Using this command allows deformation chains to be managed in a more general manner.

Return value

string[]Name of the algorithm node created/edited.

In query mode, return type is based on queried flag.

Related

cluster, flexor, lattice, percent, sculpt, wire, wrinkle

Flags

after, afterReference, before, components, deformerTools, exclusive, frontOfChain, geometry, geometryIndices, ignoreSelected, includeHiddenSelections, name, parallel, prune, remove, selectedComponents, split, type, useComponentTags
Long name (short name) Argument types Properties
after(af) boolean createedit
If the default behavior for insertion/appending into/onto the existing chain is not the desired behavior then this flag can be used to force the command to place the deformer node after the selected node in the chain even if a new geometry shape has to be created in order to do so. Works in create mode (and edit mode if the deformer has no geometry added yet).
afterReference(ar) boolean createedit
The -afterReference flag is used to specify deformer ordering in a hybrid way that choses between -before and -after automatically. If the geometry being deformed is referenced then the -after mode is used when adding the new deformer, otherwise the -before mode is used. The net effect when using -afterReference to build deformer chains is that internal shape nodes in the deformer chain will only appear at reference file boundaries, leading to lightweight deformer networks that may be more amicable to reference swapping.
before(bf) boolean createedit
If the default behavior for insertion/appending into/onto the existing chain is not the desired behavior then this flag can be used to force the command to place the deformer node before the selected node in the chain even if a new geometry shape has to be created in order to do so. Works in create mode (and edit mode if the deformer has no geometry added yet).
components(cmp) boolean query
Returns the components used by the deformer
deformerTools(dt) boolean query
Returns the name of the deformer tool objects (if any) as string string ...
exclusive(ex) string createquery
Puts the deformation set in a deform partition.
frontOfChain(foc) boolean createedit
This command is used to specify that the new deformer node should be placed ahead (upstream) of existing deformer and skin nodes in the shape's history (but not ahead of existing tweak nodes). The input to the deformer will be the upstream shape rather than the visible downstream shape, so the behavior of this flag is the most intuitive if the downstream deformers are in their reset (hasNoEffect) position when the new deformer is added. Works in create mode (and edit mode if the deformer has no geometry added yet).
geometry(g) string queryeditmultiuse
The specified object will be added to the list of objects being deformed by this deformer object, unless the -rm flag is also specified. When queried, this flag returns string string string ...
geometryIndices(gi) boolean query
Complements the -geometry flag in query mode. Returns the multi index of each geometry.
ignoreSelected(ignoreSelected) boolean create
Tells the command to not deform objects on the current selection list
includeHiddenSelections(ihs) boolean create
Apply the deformer to any visible and hidden objects in the selection list. Default is false.
name(n) string create
Used to specify the name of the node being created.
parallel(par) boolean createedit
Inserts the new deformer in a parallel chain to any existing deformers in the history of the object. A blendShape is inserted to blend the parallel results together. Works in create mode (and edit mode if the deformer has no geometry added yet).
prune(pr) boolean edit
Removes any points not being deformed by the deformer in its current configuration from the deformer set.
remove(rm) boolean editmultiuse
Specifies that objects listed after the -g flag should be removed from this deformer.
selectedComponents(cms) boolean query
Returns the components used by the deformer that are currently selected. This intersects the current selection with the components affected by the deformer.
split(sp) boolean createedit
Branches off a new chain in the dependency graph instead of inserting/appending the deformer into/onto an existing chain. Works in create mode (and edit mode if the deformer has no geometry added yet).
type(typ) string create
Specify the type of deformer to create. This flag is required in create mode. Typically the type should specify a loaded plugin deformer. This command should typically not be used to create one of the standard deformers such as sculpt, lattice, blendShape, wire and cluster, since they have their own customized commands which perform useful specialized functionality.
useComponentTags(uct) boolean create
When this flag is specified a setup using componentTags will be created. This means no groupId, groupParts, tweak or objectSet nodes will be created and connected to the new deformer.

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.

Python examples

import maya.cmds as cmds

# Select the geometries that you'd like to deform,
# and use the deformer command as follows. For example, to deform a
# cylinder with a deltaMush:
#
cmds.cylinder( ax=(0, 1, 0), r=1, hr=10, d=3, s=8, nsp=20, ch=1 )
cmds.select( 'nurbsCylinder1', r=True )
cmds.deformer( type="deltaMush" )

# To query the membership of the deformer
#
cmds.deformer( 'deltaMush1',q=True, g=True )

# To add additional geometries from your deformer, type:
#
cmds.select( 'nurbsCylinder1', r=True )
cmds.duplicate()
# Result: nurbsCylinder2 #
cmds.move( -2.749017, 0, 0, r=True )
cmds.deformer( 'deltaMush1', e=True, g='nurbsCylinder2' )

# To remove a geometry from your deformer, type:
#
cmds.deformer( 'deltaMush1', e=True, rm=True, g='nurbsCylinder2' )

# To query the components and the selected components used by the deformer
cmds.polyCylinder(r=1, h=6, sx=6, sy=1, sz=1)
cmds.select(['pCylinder1.vtx[6:11]', 'pCylinder1.vtx[13] '], r=True)
cmds.cluster()

cmds.select(['pCylinder1.vtx[4:5]', 'pCylinder1.vtx[10:11] '], r=True)
cmds.deformer('cluster1', q=True, cmp=True)
# Result: ['pCylinder1.vtx[6:11]', 'pCylinder1.vtx[13]'] #
cmds.deformer('cluster1', q=True, cms=True)
# Result: ['pCylinder1.vtx[10:11]'] #