pymel.core.modeling.transferAttributes¶
- transferAttributes(*args, **kwargs)¶
Samples the attributes of a source surface (first argument) and transfers them onto a target surface (second argument).
Flags:
Long Name / Short Name Argument Types Properties after / af bool 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 bool 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 bool 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). colorBorders / clb int Controls whether color borders are preserved when transferring color data. If this is non-zero, any color borders will be mapped onto the nearest edge on the target geometry. 0 means any color borders will be smoothly blended onto the vertices of the target geometry. deformerTools / dt bool Returns the name of the deformer tool objects (if any) as string string ... exclusive / ex unicode Puts the deformation set in a deform partition. flipUVs / fuv int Controls how sampled UV data is flipped before being transferred to the target. 0 means no flipping; 1 means UV data is flipped in the U direction; 2 means UV data is flipped in the V direction; and 3 means it is flipped in both directions. In conjunction with mirroring, this allows the creation of symmetric UV mappings (e.g. the left hand side of the character on one side of the UV map, the right hand side on the other). frontOfChain / foc bool 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 unicode 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 bool Complements the -geometry flag in query mode. Returns the multi index of each geometry. ignoreSelected / ignoreSelected bool Tells the command to not deform objects on the current selection list includeHiddenSelections / ihs bool Apply the deformer to any visible and hidden objects in the selection list. Default is false. matchChoice / mch int When using topological component matching, selects between possible matches. If the meshes involved in the transfer operation have symmetries in their topologies, there may be more than one possible topological match. Maya scores the possible matches (by comparing the shapes of the meshes) and assigns them an index, starting at zero. Match zero, the default, is considered the best, but in the event that Maya chooses the wrong one, changing this value will allow the user to explore the other matches. name / n unicode Used to specify the name of the node being created. parallel / par bool 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 bool Removes any points not being deformed by the deformer in its current configuration from the deformer set. remove / rm bool Specifies that objects listed after the -g flag should be removed from this deformer. sampleSpace / spa int Selects which space the attribute transfer is performed in. 0 is world space, 1 is model space, 4 is component-based, 5 is topology-based. The default is world space. searchMethod / sm int Specifies which search method to use when correlating points. 0 is closest along normal, 3 is closest to point. The default is closest to point. searchScaleX / ssx float Specifies an optional scale that should be applied to the x-axis of the target model before transferring data. A value of 1.0 (the default) means no scaling; a value of -1.0 would indicate mirroring along the x-axis. searchScaleY / ssy float Specifies an optional scale that should be applied to the y-axis of the target model before transferring data. A value of 1.0 (the default) means no scaling; a value of -1.0 would indicate mirroring along the y-axis. searchScaleZ / ssz float Specifies an optional scale that should be applied to the z-axis of the target model before transferring data. A value of 1.0 (the default) means no scaling; a value of -1.0 would indicate mirroring along the z-axis. sourceColorSet / scs unicode Specifies the name of a single color set on the source surface(s) that should be transferred to the target. This value is only used when the operation is configured to transfer a single color set (see the transferColors flag). sourceUvSet / suv unicode Specifies the name of a single UV set on the source surface(s) that should be transferred to the target. This value is only used when the operation is configured to transfer a single UV set (see the transferUVs flag). sourceUvSpace / sus unicode Specifies the name of the UV set on the source surface(s) that should be used as the transfer space. This value is only used when the operation is configured to transfer attributes in UV space. split / sp bool 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). targetColorSet / tcs unicode Specifies the name of a single color set on the target surface that should be receive the sampled color data. This value is only used when the operation is configured to transfer a single color set (see the transferColors flag). targetUvSet / tuv unicode Specifies the name of a single UV set on the target surface that should be receive the sampled UV data. This value is only used when the operation is configured to transfer a single UV set (see the transferUVs flag). targetUvSpace / tus unicode Specifies the name of the UV set on the target surface( that should be used as the transfer space. This value is only used when the operation is configured to transfer attributes in UV space. transferColors / col int Controls color set transfer. 0 means no color sets are transferred, 1 means that a single color set (specified by sourceColorSet and targetColorSet) is transferred, and 2 means that all color sets are transferred. transferNormals / nml int A non-zero value indicates vertex normals should be sampled and written into user normals on the target surface. transferPositions / pos int A non-zero value indicates vertex position should be sampled, causing the target surface to wrapto the source surface(s). transferUVs / uvs int Controls UV set transfer. 0 means no UV sets are transferred, 1 means that a single UV set (specified by sourceUVSet and targetUVSet) is transferred, and 2 means that all UV sets are transferred. Flag can have multiple arguments, passed either as a tuple or a list. Derived from mel command maya.cmds.transferAttributes
Example:
import pymel.core as pm # Transfer all UV and color sets from pCube1 onto pSphere1 pm.transferAttributes( 'pCube1', 'pSphere1', transferUVs=2, transferColors=2 )