pymel.core.effects.turbulence

turbulence(*args, **kwargs)

For each listed object, the command creates a new field. The field has a shape which lives in the DAG and it has an associated dependency node. The field is added to the list of fields owned by the object. Use connectDynamic to cause the field to affect a dynamic object. Note that if more than one object is listed, a separate field is created for each object. If fields are created, this command returns the names of each owning shape and of the field shapes themselves. If a field was queried, the results of the query are returned. If a field was edited, the field name is returned. If no object names are provided but the active selection list is non-empty, the command creates a field for every object in the list. If the list is empty, the command defaults to -pos 0 0 0. 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.

Flags:

Long Name / Short Name Argument Types Properties
attenuation / att float ../../../_images/query.gif ../../../_images/edit.gif
  Attentuation rate of field
frequency / f float ../../../_images/query.gif ../../../_images/edit.gif
  Frequency of turbulence field. This determines how often motion is disrupted.
magnitude / m float ../../../_images/query.gif ../../../_images/edit.gif
  Strength of field.
maxDistance / mxd float ../../../_images/query.gif ../../../_images/edit.gif
  Maximum distance at which field is exerted. -1 indicates that the field has no maximum distance.
name / n unicode ../../../_images/query.gif ../../../_images/edit.gif
  name of field
noiseLevel / nsl int ../../../_images/query.gif ../../../_images/edit.gif
  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 ../../../_images/query.gif ../../../_images/edit.gif
  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.
perVertex / pv bool ../../../_images/query.gif ../../../_images/edit.gif
  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 froce is exerted only from the geometric center of the set of points.
phase / p float ../../../_images/query.gif ../../../_images/edit.gif
  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 ../../../_images/query.gif ../../../_images/edit.gif
  X component of phase shift of turbulence field. This influences the direction of the disruption.
phaseY / py float ../../../_images/query.gif ../../../_images/edit.gif
  Y component of phase shift of turbulence field. This influences the direction of the disruption.
phaseZ / pz float ../../../_images/query.gif ../../../_images/edit.gif
  Z component of phase shift of turbulence field. This influences the direction of the disruption.
position / pos float, float, float ../../../_images/query.gif ../../../_images/edit.gif
  Position in space (x,y,z) where you want to place a gravity field. The gravity 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.
torusSectionRadius / tsr float ../../../_images/query.gif ../../../_images/edit.gif
  Section radius for a torus volume. Applies only to torus. Similar to the section radius in the torus modelling primitive.
volumeExclusion / vex bool ../../../_images/query.gif ../../../_images/edit.gif
  Volume exclusion of the field. If true, points outside the volume (defined by the volume shape attribute) are affected, If false, points inside the volume are affected. Has no effect if volumeShape is set to none.
volumeOffset / vof float, float, float ../../../_images/query.gif ../../../_images/edit.gif
  Volume offset of the field. Volume offset translates the field’s volume by the specified amount from the actual field location. This is in the field’s local space.
volumeShape / vsh unicode ../../../_images/query.gif ../../../_images/edit.gif
  Volume shape of the field. Sets/edits/queries the field’s volume shape attribute. If set to any value other than none, determines a 3-D volume within which the field has effect. Values are: none,cube,sphere,cylinder,cone,torus.
volumeSweep / vsw float ../../../_images/query.gif ../../../_images/edit.gif
  Volume sweep of the field. Applies only to sphere, cone, cylinder, and torus. Similar effect to the sweep attribute in modelling. Flag can have multiple arguments, passed either as a tuple or a list.

Derived from mel command maya.cmds.turbulence

Example:

import pymel.core as pm

# Creates a new field
pm.turbulence( n='turbulenceF', m=5.0, pos=(0.25, 0, 0) )
# Result: nt.TurbulenceField(u'turbulenceF') #

# Edits the frequency value of the field named turbulenceF
pm.turbulence( 'turbulenceF', e=True, f=0.5 )
# Result: nt.TurbulenceField(u'turbulenceF') #

# Queries turbulenceF for its frequency value
pm.turbulence( 'turbulenceF', q=True, f=1 )
# Result: 0.5 #