Go to: Synopsis. Return value. Flags. Python examples.
turbulence( selectionList , [attenuation=float], [frequency=float], [magnitude=float], [maxDistance=linear], [name=string], [noiseLevel=int], [noiseRatio=float], [perVertex=boolean], [phase=float], [phaseX=float], [phaseY=float], [phaseZ=float], [position=[linear, linear,
linear]])
Note: Strings representing object names and
arguments must be separated by commas. This is not depicted in the
synopsis.
turbulence is undoable, queryable, and editable.
A turbulence field causes irregularities (also called 'noise' or
'jitter') in the motion of affected objects. Use connectDynamic to
cause the field to affect a dynamic object. If fields are created,
this command returns the names of each of the fields. If a field
was queried, the results of the query are returned. If a field was
edited, the field name is returned. If object names are provided or
the active selection list is non-empty, the command creates a field
for every object in the list and calls addDynamic to add it to the
object. If the list is empty, the command defaults to -pos 0 0 0.
Setting the -pos flag with objects named on the command line is an
error.
In query mode, return type is based on queried flag.
attenuation, frequency, magnitude, maxDistance, name,
noiseLevel, noiseRatio, perVertex, phase,
phaseX, phaseY,
phaseZ, position
Long name (short name) |
Argument types |
Properties |
position(pos) |
[linear, linear, linear] |
   |
|
Position in space where you want to place a field. The field
then emanates from this position in space rather than from an
object. Note that you can both use -pos (creating a field at a
position) and also provide object names. |
|
magnitude(m) |
float |
  |
|
Strength of field. As this increases, the affected objects will
move faster. |
|
attenuation(att) |
float |
  |
|
Attentuation rate of field |
|
maxDistance(mxd) |
linear |
  |
|
Maximum distance at which field is exerted. |
|
name(n) |
string |
  |
|
perVertex(pv) |
boolean |
  |
|
Per-vertex application. If this flag is set true, then each
individual point (CV, particle, vertex,etc.) of the chosen object
exerts an identical copy of the force field. If this flag is set to
false, then the force is exerted only from the geometric center of
the set of points. |
|
frequency(f) |
float |
  |
|
Frequency of turbulence field. This determines how often motion
is disrupted. |
|
phase(p) |
float |
  |
|
Phase shift of turbulence field. This influences the direction
of the disruption. This flag is obsolete and is retained only for
backward compatibility. It is replaced by -phaseX, -phaseY, and
-phaseZ. Setting -phase is identical to setting -phaseZ (the phase
shift was always in the Z dimension). |
|
phaseX(px) |
float |
  |
|
X component of phase shift of turbulence field. This influences
the direction of the disruption. |
|
phaseY(py) |
float |
  |
|
Y component of phase shift of turbulence field. This influences
the direction of the disruption. |
|
phaseZ(pz) |
float |
  |
|
Z component of phase shift of turbulence field. This influences
the direction of the disruption. |
|
noiseLevel(nsl) |
int |
  |
|
If the noiseLevel parameter is greater than zero, the field
will do multiple lookups in the table. Each additional lookup is
weighted using noiseRatio (which see). The noiseLevel is the number
of additional lookups, so if noiseLevel is 0, there is just one
lookup. A value of 0 (the default) corresponds to the way the field
behaved prior to Maya 3.0. |
|
noiseRatio(nsr) |
float |
  |
|
If noiseLevel is greater than zero, then noiseRatio is the
relative magnitude for each consecutive noise evaluation. These are
cumulative: for example, if noiseRatio is 0.5, then the first
evaluation is weighted 0.5, the second 0.25, and so on. Has no
effect if noiseLevel is zero. |
|
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
# Creates a new field
cmds.turbulence( n='turbulenceF', m=5.0, pos=(0.25, 0, 0) )
# Edits the frequency value of the field named turbulenceF
cmds.turbulence( 'turbulenceF', e=True, f=0.5 )
# Queries turbulenceF for its frequency value
cmds.turbulence( 'turbulenceF', q=True, f=1 )