Particle systems are a way of simulating complex objects or materials that are composed of many small particles, such as fluids, fireworks, explosions, fire, smoke, water, snow, and so on. Complex systems are achievable because individual particles are generated, each is given its own characteristics, and each behaves autonomously. Further, the particles themselves are typically easy to adjust, or even replace, making it possible to alter the appearance or functionality of the system relatively easily. These are also characteristics of object-oriented programming, so it's not surprising that particle systems are often written using this approach.
To end this chapter, we'd like to create a very simple particle system—using only two classes—which looks a little bit like a psychedelic water fountain. Color circles shoot up out of the "fountain" and then fall down under the effect of gravity. Figure 7-12 shows what the system looks like.
Figure 7-12. A particle system with a gravity setting of 2 and .2
The entry point to the particle system is the document class
ParticleDemo. After declaring
variables to determine the point at which the particles will appear,
all the class constructor does is add an enter frame event listener to
the stage. Upon every enter frame event, the listener function creates
a new instance of the
Particle class, which creates a particle and adds it ...