MAXScript Extensions > MAXScript Extensions for Particle Flow > Particle Flow Classes > Operators > Transforms >

# Position_Object : Helper

    Position_Object - superclass: helper super-superclass:node - classID: #(1962490647, 515064320)

Value > MAXWrapper > Node > Helper > Position_Object

| Particle Flow - Quick Navigation

Description:

By default, particles are born, or emitted, from the Particle Flow icon. The Position_Object operator lets you emit particles from any other object or objects in the scene instead. This topic uses the term emitter to refer to an object or objects used to emit particles with this operator.

Use the Position_Object settings to control the initial placement of particles on the emitter. You can set the emitter to emit particles from its surface, volume, edges, vertices, or pivot, or from a sub-object selection. You can also control particle emission with a material applied to the object.

Constructor:

    Position_Object...

Properties:

    <Position_Object>.Lock_On_Emitter Boolean default:false

When set to True, causes all particles to remain at their initial positions on the emitter. When set to False, each particle's birth position is determined by the emitter's current location.

    <Position_Object>.Inherit_Emitter_Movement Boolean default:false

When set to True, the software sets each particle's speed and direction of motion to those of the emitter at the time of birth. When set to False , the emitter movement doesn't affect that of the particles. Used only when .Lock_On_Emitter is set to False .

    <Position_Object>.Multiplier Float default:100.0 --percentage

Determines, as a percentage, the extent to which particles inherit the emitter's motion. Available only when .Inherit_Emitter_Movement is on.

    <Position_Object>.Variation Float default:0.0 --percentage

Determines, as a percentage, the extent to which inherited emitter motion can vary per particle. To determine the final multiplier for each particle, the Variation value is multiplied by a random number between -1.0 and 1.0, and then added to the Multiplier value.

    <Position_Object>.emitter_Objects node array default:#()

Specifies the list of emitter nodes to be used. When the list is empty, the world origin (0.0,0.0,0.0) will be used as the emitter source.

    <Position_Object>.Animated_Shape Boolean default:false

When set to True, allows particles to follow the surface of an object whose form is animated by morphing or with modifiers.

    <Position_Object>.Subframe_Sampling Boolean default:false

When set to True , the operator acquires animation of the emitter shape on a Tick basis (every 1/4800th of a second) rather than a frame basis. This provides greater precision in allowing the particle positions to follow animation of the emitter object's form.

    <Position_Object>.Location Integer default:3

Controls the state of the Location drop-down list. It lets you specify where on each emitter the particles appear. This choice applies to all emitter objects.

0: Pivot - Emits particles from the original position of the emitter object's pivot. Moving the pivot does not affect this option.

1: Vertices - Emits particles from randomly selected vertices of the emitter objects.

2: Edges - Emits particles from random points along the edge sub-objects of the emitter objects.

3: Surface - Emits particles from random points on the surface of the icon.

4: Volume - Emits particles from random points within the volume of the icon.

5: Selected Vertices - Emits particles from the current vertex sub-object selection.

6: Selected Edges - Emits particles from the current edge sub-object selection.

7: Selected Faces - Emits particles from the current face or polygon sub-object selection.

    <Position_Object>.Use_Surface_Offset Boolean default:false

Lets you specify a range of distances from the object surface for particle placement.

Use_Surface_Offset is not used when Location is set to 0 : Pivot or 1 : Volume. Use the .Surface_Offset_Minimum and .Surface_Offset_Maximum properties to set the range.

Note

Negative values offset the particles below the surface.

    <Position_Object>.Surface_Offset_Minimum Float default:-1.0 --world units;
    <Position_Object>.Surface_Offset_Maximum Float default:1.0 --world units;

When .Use_Surface_Offset is set to True, let you specify the range of offset distances from the object surface.

    <Position_Object>.Density_By_Emitter_Material Boolean default:false

When set to True, enables the usage of the .Density_Type option.

    <Position_Object>.Density_Type Integer default:0

Varies emission over the emitter surface based on properties of the material applied to the emitter. For example, if the object is assigned a black-and-white checkered diffuse map and you choose the Grayscale option, particles are emitted only from the white checks.

Possible values are:

0: Grayscale - The software internally converts the material-based coloring (diffuse) to grayscale, and then emits more particles in lighter areas and fewer in darker areas.

1: Opacity - Particles are more likely to appear on opaque areas than on transparent areas.

2: Grayscale & Opacity - Combines the two: More particles appear on light, opaque areas than on dark, transparent areas.

3: Red/Green/Blue - Considers only the specified color channel. The higher its value at any given pixel, the more likely particles are to appear there.

    <Position_Object>.Use_Sub_Material Boolean default:false

When set to True, uses a sub-material from the Multi/Sub-Object material assigned to the emitter to define density values.

    <Position_Object>.Material_ID Integer default:1

Specifies the material ID of the sub-material to be used for particle emission.

    <Position_Object>.Apart_Placement Boolean default:false

When set to True, the software attempts to keep the particles apart by the amount specified in Distance. The likelihood of successfully separating particles depends on the number of particles, the specified distance, and the. .Maximum_Number_of_Attempts value.

    <Position_Object>.Apart_Distance Float default:1.0 --world units

Specifies the distance, in system units, by which the software should try to keep the particles separate.

    <Position_Object>.Distinct_Points_Only Integer default:0

Limits emission to a specific number of points on the specified Location type. Emission points are still randomized. Change the .Random_Seed value to alter these.

    <Position_Object>.Total_Distinct_Points Integer default:10

Sets the number of emission points. Available only when. .Distinct_Points_Only is set to True.

    <Position_Object>.delete Integer default:0

When set to True, if the software cannot place a particle according to the current option, it deletes the particle. When set to False, particle placement is undefined; that is, it depends on other variables.

    <Position_Object>.Random_Seed Integer default:12345

Specifies the randomization value.

    <Position_Object>.Maximum_Number_of_Attempts Integer default:100

When .Apart_Placement is set to True, this specifies the maximum number of times Particle Flow will try to set particle positions that maintain the requested distance. If unsuccessful within this number of attempts, particles might be closer together than the requested distance. Also affects placement with Density_By_Emitter_Material when .Density_Type is set to either of the Grayscale options.

## Position_Object Interfaces:

Interface: action

Interface: operator

Interface: PViewItem

#### See Also

- Particle Flow Classes