package org.jbox2d.particle; import org.jbox2d.collision.shapes.Shape; import org.jbox2d.common.Vec2; /** * A particle group definition holds all the data needed to construct a particle group. You can * safely re-use these definitions. */ public class ParticleGroupDef { /** The particle-behavior flags. */ public int flags; /** The group-construction flags. */ public int groupFlags; /** * The world position of the group. Moves the group's shape a distance equal to the value of * position. */ public final Vec2 position = new Vec2(); /** * The world angle of the group in radians. Rotates the shape by an angle equal to the value of * angle. */ public float angle; /** The linear velocity of the group's origin in world co-ordinates. */ public final Vec2 linearVelocity = new Vec2(); /** The angular velocity of the group. */ public float angularVelocity; /** The color of all particles in the group. */ public ParticleColor color; /** * The strength of cohesion among the particles in a group with flag b2_elasticParticle or * b2_springParticle. */ public float strength; /** Shape containing the particle group. */ public Shape shape; /** If true, destroy the group automatically after its last particle has been destroyed. */ public boolean destroyAutomatically; /** Use this to store application-specific group data. */ public Object userData; public ParticleGroupDef() { flags = 0; groupFlags = 0; angle = 0; angularVelocity = 0; strength = 1; destroyAutomatically = true; } }