pymel.core.effects.particle

particle(*args, **kwargs)

The particle command creates a new particle object from a list of world space points. If a particle object is created, the command returns the names of the new particle shape and its associated particle object dependency node. If an object was queried, the results of the query are returned. Per particle attributes can be queried using the particleId or the order of the particle in the particle array. If an object was edited, nothing is returned.

Flags:

Long Name / Short Name Argument Types Properties
attribute / at unicode ../../../_images/query.gif ../../../_images/edit.gif
  Used in per particle attribute query and edit. Specifies the name of the attribute being queried or edited.
cache / ch bool ../../../_images/create.gif ../../../_images/query.gif ../../../_images/edit.gif
  Turns caching on/off for the particle shape.
conserve / c float ../../../_images/query.gif ../../../_images/edit.gif
  Conservation of momentum control (between 0 and 1). Specifies the fraction of the particle shape’s existing momentum which is conserved from frame to frame. A value of 1 (the default) corresponds to true Newtonian physics, in which momentum is conserved.
count / ct bool ../../../_images/query.gif
  Returns the number of particles in the object.
deleteCache / dc bool ../../../_images/create.gif
  Deletes the particle shapes cache. This command is not undoable.
dynamicAttrList / dal bool ../../../_images/query.gif
  Returns a list of the dynamic attributes in the object.
floatValue / fv float ../../../_images/edit.gif
  Used only in per particle attribute edit. Specifies that the edit is of a float attribute and must be followed by the new float value.
gridSpacing / grs float ../../../_images/create.gif ../../../_images/query.gif
  Spacing between particles in the grid.
inherit / i float ../../../_images/query.gif ../../../_images/edit.gif
  Inherit this fraction (0-1) of emitting object’s velocity.
jitterBasePoint / jbp float, float, float ../../../_images/create.gif ../../../_images/query.gif
  Base point (center point) for jitters. The command will create one swatch of jitters for each base point. It will pair up other flags with base points in the order they are given in the command line. If not enough instances of the other flags are availble, the last one on the line with be used for all other instances of -jpb.
jitterRadius / jr float ../../../_images/create.gif ../../../_images/query.gif
  Max radius from the center to place the particle instances.
lowerLeft / ll float, float, float ../../../_images/create.gif ../../../_images/query.gif
  Lower left point of grid.
name / n unicode ../../../_images/query.gif ../../../_images/edit.gif
  name of particle object
numJitters / nj int ../../../_images/create.gif ../../../_images/query.gif
  Number of jitters (instances) per particle.
order / order int ../../../_images/query.gif ../../../_images/edit.gif
  Used in per particle attribute query and edit. Specifies the zero-based order (index) of the particle whose attribute is being queried or edited in the particle array. Querying the value of a per particle attribute requires the -attribute and -id or -order flags and their arguments to precede the -q flag.
particleId / id int ../../../_images/query.gif ../../../_images/edit.gif
  Used in per particle attribute query and edit. Specifies the id of the particle whose attribute is being queried or edited. Querying the value of a per particle attribute requires the -attribute and -id or -order flags and their arguments to precede the -q flag.
perParticleDouble / ppd bool ../../../_images/query.gif
  Returns a list of the per-particle double attributes, excluding initial-state, cache, and information-only attributes.
perParticleVector / ppv bool ../../../_images/query.gif
  Returns a list of the per-particle vector attributes, excluding initial-state, cache, and information-only attributes.
position / p float, float, float  
  World-space position of each particle.
shapeName / sn unicode ../../../_images/query.gif ../../../_images/edit.gif
  Specify the shape name used for geometry instancing. DO not confuse this with the -n flag which names the particle object.
upperRight / ur float, float, float ../../../_images/create.gif ../../../_images/query.gif
  Upper right point of grid.
vectorValue / vv float, float, float ../../../_images/edit.gif
  Used only in per particle attribute edit. Specifies that the edit is of a vector attribute and must be followed by all three float values for the vector. Flag can have multiple arguments, passed either as a tuple or a list.

Derived from mel command maya.cmds.particle

Example:

import pymel.core as pm

# Creates a particle object with four particles
pm.particle( p=[(0, 0, 0), (3, 5, 6), (5, 6, 7), (9, 9, 9)] )
# Result: [nt.Transform(u'particle1'), nt.Particle(u'particleShape1')] #

# Returns the age of the particle with id 2 in object particle1
pm.particle( 'particle1', q=True, attribute='age', id=2 )
# Result: [0.0] #

# Returns the velocity of the 3rd particle in the currently selected
# particle object
pm.particle( attribute='velocity', q=True, order=3  )
# Result: [0.0, 0.0, 0.0] #

# Edits the velocity of the 7th particle in the currently selected
# particle object to be 0.0, 1.0, 0.0
pm.particle( e=True, attribute='velocity', order=3, vectorValue=(0.0, 1.0, 0.0) )
# Result: [nt.Transform(u'particle1'), nt.Particle(u'particleShape1')] #

# Edits the mass of the particle in "particle1" with id 3 to be 0.7
pm.particle( 'particle1', e=True, attribute='mass', id=3, fv=0.7 )
# Result: [nt.Transform(u'particle1'), nt.Particle(u'particleShape1')] #