pymel.core.modeling.propMove¶
- propMove(*args, **kwargs)¶
Performs a proportional translate, scale or rotate operation on any number of objects. The percentages to rotate, scale or translate by can be specified using either the -p flags or -px, -py, -pz flags. Each selected object must have a corresponding -p or -px, -py, -pz flag. The rotate, scale or translate performed is relative.
Flags:
Long Name / Short Name Argument Types Properties percent / p float The percentage effect that the specified x,y,z has on an object. This flag must be specified once for each object, ie. if there are 4 objects specified, there must be 4 -pflags, (otherwise a percentage of 1.0 will be used). This flag generally has a range between 0.0 and 1.0, but can be any float value. percentX / px float The percentage effect that the specified x has on an object. This flag is specified one per object. The value ranges between 0.0 and 1.0, but can be any float value. If the -p flag has been specified, this flag usage is invalid. percentY / py float The percentage effect that the specified y has on an object. This flag is specified one per object. The value ranges between 0.0 and 1.0, but can be any float value. If the -p flag has been specified, this flag usage is invalid. percentZ / pz float The percentage effect that the specified z has on an object. This flag is specified one per object. The value ranges between 0.0 and 1.0, but can be any float value. If the -p flag has been specified, this flag usage is invalid. pivot / pi float, float, float Specify the pivot about which a rotation or scale will occur. The change in pivot lasts only as long as the current ‘propMove’ command, and so must be used in conjunction with one of the above move flags for any effect to be noticeable. rotate / r float, float, float Proportionally rotate each object by the given angles. The rotation values are scaled by the percentage specified by that object’s corresponding -percentflag. All angles are in degrees. The rotation is about the pivot specified by the -pivotflag, or (0, 0, 0) if the -pivotflag is not present. scale / s float, float, float Proportionally scale each object by the given amounts. The scale values are scaled by the percentage specified by that object’s corresponding -percentflag. The position and size of each object is measured relative to the pivot specified by the -pivotflag, and defaults to each object’s individual pivot. In the case of control vertices, or some other object component, the default is the parent object’s pivot. translate / t float, float, float Proportionally translate each object by the given amounts. The translation values are scaled by the percentage specified by that object’s corresponding -percentflag. The -pivotflag has no effect on translation. worldSpace / ws bool Use worldspace for the calculations. Flag can have multiple arguments, passed either as a tuple or a list. Derived from mel command maya.cmds.propMove
Example:
import pymel.core as pm pm.propMove( 3, 6, 0, 'surface1', 'surface2', 'surface3', 'surface4', 'surface5', 'surface6', 'surface7', p=[0.1, 0.5, 0.7, 1.0, 0.7, 0.5, 0.1] ) # This performs a proportional translate of (3,6,0) on seven surfaces. # Note that there are 7 "-p" flags, one for each surface. pm.propMove( 'surface1', 'surface2', 'surface3', 'surface4', 'surface5', 'surface6', 'surface7', p=[0.1, 0.5, 0.7, 1.0, 0.7, 0.5, 0.1], pivot=(1, 1, 1), s=(3, 3, 3) ) # This performs a proportional scale of (3,3,3) on seven surfaces. # Note that there are 7 "-p" flags, one for each surface. The scale # happened about the specified pivot (1,1,1). pm.propMove( 'surface1', 'surface2', 'surface3', 'surface4', 'surface5', 'surface6', 'surface7', p=[0.1, 0.5, 0.7, 1.0, 0.7, 0.5, 0.1], r=(30, 60, 90) ) # This performs a proportional rotate of (30,60,90) on seven surfaces. # Note that there are 7 "-p" flags, one for each surface. pm.propMove( 'surface1', 'surface2', 'surface3', 'surface4', 'surface5', 'surface6', 'surface7', px=[0.1, 0.5, 0.7, 1.0, 0.7, 0.5, 0.1], r=(30, 60, 90) ) # This performs a proportional rotate of (30,60,90) on seven surfaces. # The percentages are only applied on the rotation 30 about the X axis. The # percentages along Y and Z are 1.0. Note that there are 7 "-px" flags, one # for each surface. The surfaces are rotated by 60, 90 in Y and Z.