Go to: Synopsis. Return value. Related. Flags. Python examples.

Synopsis

emitter( [objects] , [alongAxis=float], [aroundAxis=float], [awayFromAxis=float], [awayFromCenter=float], [cycleEmission=string], [cycleInterval=int], [directionX=linear], [directionY=linear], [directionZ=linear], [directionalSpeed=float], [maxDistance=linear], [minDistance=linear], [needParentUV=boolean], [normalSpeed=float], [position=[linear, linear, linear]], [randomDirection=float], [rate=float], [scaleRateByObjectSize=boolean], [scaleSpeedBySize=boolean], [speed=float], [speedRandom=float], [spread=float], [tangentSpeed=float], [torusSectionRadius=linear], [type=string], [volumeOffset=[linear, linear, linear]], [volumeShape=string], [volumeSweep=angle])

Note: Strings representing object names and arguments must be separated by commas. This is not depicted in the synopsis.

emitter is undoable, queryable, and editable.

Creates an emitter object. If object names are provided or if objects are selected, applies the emitter to the named/selected object(s)in the scene. Particles will then be emitted from each. If no objects are named or selected, or if the -pos option is specified, creates a positional emitter.

If an emitter was created, the command returns the name of the object owning the emitter, and the name of emitter shape. If an emitter was queried, the command returns the results of the query.

Keyframeable attributes of the emitter node: rate, directionX, directionY, directionZ, minDistance, maxDistance, spread.

Return value

string

In query mode, return type is based on queried flag.

Related

addDynamic, addPP, particle

Flags

alongAxis, aroundAxis, awayFromAxis, awayFromCenter, cycleEmission, cycleInterval, directionX, directionY, directionZ, directionalSpeed, maxDistance, minDistance, needParentUV, normalSpeed, position, randomDirection, rate, scaleRateByObjectSize, scaleSpeedBySize, speed, speedRandom, spread, tangentSpeed, torusSectionRadius, type, volumeOffset, volumeShape, volumeSweep
Long name (short name) Argument types Properties
type(typ) string queryedit
Type of emitter. The choices are omni | dir | direction | surf | surface | curve | curv. The default is omni. The full definition of these types are: omnidirectional point emitter, directional point emitter, surface emitter, or curve emitter.
directionX(dx) linear queryedit
x-component of emission direction. Used for directional emitters, and for volume emitters with directionalSpeed.
directionY(dy) linear queryedit
y-component of emission direction. Used for directional emitters, and for volume emitters with directionalSpeed.
directionZ(dz) linear queryedit
z-component of emission direction. Used for directional emitters, and for volume emitters with directionalSpeed.
minDistance(mnd) linear queryedit
Minimum distance at which emission starts.
maxDistance(mxd) linear queryedit
Maximum distance at which emission ends.
position(pos) [linear, linear, linear] queryeditmultiuse
Positional emitter at world space location (x,y,z).
rate(r) float queryedit
Rate at which particles emitted (can be non-integer). For point emission this is rate per point per unit time. For surface emission it is rate per square unit of area per unit time.
spread(sp) float queryedit
Random spread (0-1), as a fraction of 90 degrees, along specified direction. Directional emitters only.
speedRandom(srn) float queryedit
Identifies a range of random variation for the speed of each generated particle. If set to a non-zero value, speed becomes the mean value of the generated particles, whose speeds vary by a random amount up to plus or minus speedRandom/2. For example, speed 5 and speedRandom 2 will make the speeds vary between 4 and 6.
cycleEmission(cye) string queryedit
Possible values are "none" and "frame." Cycling emission restarts the random number stream after a specified interval. This can either be a number of frames or a number of emitted particles. In each case the number is specified by the cycleInterval attribute. Setting cycleEmission to "frame" and cycleInterval to 1 will then re-start the random stream every frame. Setting cycleInterval to values greater than 1 can be used to generate cycles for games work.
cycleInterval(cyi) int queryedit
Specifies the number of frames or particles between restarts of the random number stream. See cycleEmission. Has no effect if cycleEmission is set to None.
speed(spd) float queryedit
Speed multiple. Multiplies the velocity of the emitted particles by this amount. Does not apply to volume emitters. For that emitter type, use directionalSpeed.
normalSpeed(nsp) float queryedit
Normal speed multiple for point emission. For each emitted particle, multiplies the component of the velocity normal to the surface or curve by this amount. Surface and curve emitters only.
tangentSpeed(tsp) float queryedit
Tangent speed multiple for point emission. For each emitted particle, multiplies the component of the velocity tangent to the surface or curve by this amount. Surface and curve emitters only.
volumeShape(vsh) string queryedit
Volume shape of the emitter. Sets/edits/queries the field's volume shape attribute. If set to any value other than "none", determines a 3-D volume within which particles are generated. Values are: "cube," "sphere," "cylinder," "cone," "torus."
volumeOffset(vof) [linear, linear, linear] queryedit
Volume offset of the emitter. Volume offset translates the emission volume by the specified amount from the actual emitter location. This is in the emitter's local space.
volumeSweep(vsw) angle queryedit
Volume sweep of the emitter. Applies only to sphere, cone, cylinder, and torus. Similar effect to the sweep attribute in modelling.
torusSectionRadius(tsr) linear queryedit
Section radius for a torus volume. Applies only to torus. Similar to the section radius in the torus modelling primitive.
awayFromCenter(afc) float queryedit
Initial velocity multiplier in the direction away from the center point of a cube or sphere volume emitter. Used only with the cube and sphere volume emitters.
awayFromAxis(afx) float queryedit
Initial velocity multiplier in the direction away from the central axis of the volume. See the diagrams in the documentation. Used only with the cylinder, cone, and torus volume emitters.
aroundAxis(arx) float queryedit
Initial velocity multiplier in the direction around the central axis of the volume. See the diagrams in the documentation. Applies only to volume emitters.
alongAxis(alx) float queryedit
Initial velocity multiplier in the direction along the central axis of the volume. See the diagrams in the documentation. Applies only to volume emitters.
randomDirection(rnd) float queryedit
Magnitude of a random component of the speed from volume emission.
directionalSpeed(drs) float queryedit
For volume emitters only, adds a component of speed in the direction specified by the directionX, Y, and Z attributes. Applies only to volume emitters. Does not apply to other types of emitters.
scaleSpeedBySize(ssz) boolean queryedit
Indicates whether the scale of a volume emitter affects its velocity.
needParentUV(nuv) boolean queryedit
If aNeedParentUV is true, compute parentUV value from each triangle or each line segment, then send out to the target particle object. You also need to add parentU and parentV attributes to the particle object to store these values.
scaleRateByObjectSize(sro) boolean queryedit
Applies to curve and surface emitters, only. If true, number of particles is determined by object size (area or length) times rate value. If false, object size is ignored and the rate value is used without modification. The former is the way Maya behaved prior to version 3.0.

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.

Python examples

import maya.cmds as cmds

cmds.particle( p=((-1, 5, 2), (2, 2, 2), (3, 3, 3)), n='particles' )
cmds.emitter( 'particles', r=300, mnd=1.5, mxd=2.5, n='emitter' )
cmds.particle( n='emitted' )
cmds.connectDynamic( 'emitted', em='emitter' )

# Creates a particle emitter.

cmds.emitter( dx=1, dy=0, dz=0, sp=0.33, pos=(1, 1, 1), n='myEmitter' )
cmds.particle( n='emittedParticles' )
cmds.connectDynamic( 'emittedParticles', em='myEmitter' )

# Creates a point emitter.