ParticleManager manager = new ParticleManager(getParticlesNumber(), getCamera());
ParticleManager manager = new ParticleManager(getParticlesNumber());
    public Object clone() {        ParticleManager manager = new ParticleManager(getParticlesNumber(),                getCamera());        manager.setControlFlow(getControlFlow());        manager.setEmissionDirection( (Vector3f) getEmissionDirection().clone());        manager.setEmissionMaximumAngle(getEmissionMaximumAngle());        manager.setEndColor( (ColorRGBA) getEndColor().clone());        manager.setEndSize(getEndSize());        manager.setGeometry(getGeoMesh());        manager.setGeometry(getGeometry());        manager.setGravityForce( (Vector3f) getGravityForce().clone());        manager.setInitialVelocity(getInitialVelocity());        manager.setParticlesMinimumLifeTime(getParticlesMinimumLifeTime());        manager.setParticlesOrigin( (Vector3f) getParticlesOrigin().clone());        manager.setParticleSpinSpeed(getParticleSpinSpeed());        manager.setPrecision(getPrecision());        manager.setRandomMod(getRandomMod());        manager.setReleaseRate(getReleaseRate());        manager.setReleaseVariance(getReleaseVariance());        manager.setSpeed(getSpeed());        manager.setStartColor( (ColorRGBA) getStartColor().clone());        manager.setStartSize(getStartSize());        manager.setIterations(getIterations());        manager.setRepeatType(getRepeatType());                manager.getParticles().addController(manager);                for (int i = 0; i < getParticles().getRenderStateList().length; i++) {            if (getParticles().getRenderStateList()[i] != null) {                manager.getParticles().setRenderState(getParticles()                        .getRenderStateList()[i]);            }        }                manager.getParticles().setModelBound(getParticles().getModelBound());        manager.getParticles().updateModelBound();        manager.warmUp(manager.getIterations());                return manager;    }