Packagecom.boristhebrave.Box2DWith.Flint
Classpublic class BodiesInitializer
InheritanceBodiesInitializer Inheritance org.flintparticles.common.initializers.InitializerBase

This initializer creates bodies with a random choice of body and shape definition, and then attaches them to particles for later use with BodyRenderer. The particles velocity and position are copied over, allowing you to use Flint's usual suite of initializers as well as rigid bodies.

If you wish to do further initialization, create a new initializer, and ensure it has lower default priority than BodyInitializer.



Public Properties
 PropertyDefined by
  bodyDefs : *
The array or FastWeightedArray to choose body defs from.
BodiesInitializer
  scale : Number
The scaling factor to use when initialzing body properties from particle properties.
BodiesInitializer
  shapeDefs : *
An array or FastWeightedArray of arrays of b2ShapeDef to create inside the body.
BodiesInitializer
  world : b2World
The world which bodies will be created for.
BodiesInitializer
Public Methods
 MethodDefined by
  
BodiesInitializer(world:b2World, bodyDefs:Number, shapeDefs:*, scale:*)
Creates a new initializer, attached to the given world.
BodiesInitializer
  
Returns a default priority of 0 for this action.
BodiesInitializer
  
initialize(emitter:Emitter, particle:Particle):void
Initializes a particle.
BodiesInitializer
Property detail
bodyDefsproperty
public var bodyDefs:*

The array or FastWeightedArray to choose body defs from. SetMassFromShapes is always used to define the body mass.

scaleproperty 
public var scale:Number

The scaling factor to use when initialzing body properties from particle properties.

shapeDefsproperty 
public var shapeDefs:*

An array or FastWeightedArray of arrays of b2ShapeDef to create inside the body.

worldproperty 
public var world:b2World

The world which bodies will be created for.

Constructor detail
BodiesInitializer()constructor
public function BodiesInitializer(world:b2World, bodyDefs:Number, shapeDefs:*, scale:*)

Creates a new initializer, attached to the given world.

Parameters
world:b2World — The world attached to.
 
bodyDefs:Number — The array or FastWeightedArray to choose body defs from.
 
shapeDefs:* — An array or FastWeightedArray of arrays of b2ShapeDef to create inside the body.
 
scale:* — The scaling factor to use in pixels/unit for initializing the position and velocity of the body given the particle properties. If this is blank, the bodies are moved, and will pile up at the origin if not moved by a later intializer.

See also

org.flintparticles.common.utils.FastWeightedArray
Method detail
getDefaultPriority()method
public override function getDefaultPriority():Number

Returns a default priority of 0 for this action. Derived classes overrid ethis method if they want a different default priority.

Returns
Number
initialize()method 
public override function initialize(emitter:Emitter, particle:Particle):void

Initializes a particle.

Parameters
emitter:Emitter
 
particle:Particle