tsparticles 1.41.4 → 1.42.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Core/Canvas.js +4 -5
- package/Core/Interfaces/ICoordinates.d.ts +8 -0
- package/Core/Interfaces/IParticleGravity.d.ts +5 -0
- package/Core/Interfaces/IParticleGravity.js +2 -0
- package/Core/Interfaces/index.d.ts +1 -0
- package/Core/Interfaces/index.js +1 -0
- package/Core/Particle.d.ts +3 -1
- package/Core/Particle.js +9 -7
- package/Core/Particles.js +2 -1
- package/Core/Retina.js +7 -7
- package/Core/Utils/ParticlesMover.js +2 -2
- package/Interactions/Particles/Links/LinkInstance.js +1 -1
- package/Options/Classes/AnimatableGradient.d.ts +4 -4
- package/Options/Classes/AnimatableGradient.js +4 -4
- package/Options/Classes/AnimationOptions.d.ts +5 -5
- package/Options/Classes/AnimationOptions.js +3 -2
- package/Options/Classes/ColorAnimation.d.ts +2 -2
- package/Options/Classes/ColorAnimation.js +2 -2
- package/Options/Classes/Particles/Move/Attract.d.ts +2 -2
- package/Options/Classes/Particles/Move/Attract.js +2 -1
- package/Options/Classes/Particles/Move/MoveAngle.d.ts +3 -3
- package/Options/Classes/Particles/Move/MoveAngle.js +3 -2
- package/Options/Classes/Particles/Move/MoveGravity.d.ts +5 -5
- package/Options/Classes/Particles/Move/MoveGravity.js +3 -2
- package/Options/Classes/Particles/Orbit/Orbit.d.ts +4 -4
- package/Options/Classes/Particles/Orbit/Orbit.js +4 -3
- package/Options/Classes/Particles/Repulse/Repulse.d.ts +5 -5
- package/Options/Classes/Particles/Repulse/Repulse.js +5 -4
- package/Options/Classes/Particles/Roll/RollLight.d.ts +2 -2
- package/Options/Classes/Particles/Roll/RollLight.js +2 -1
- package/Options/Classes/Particles/Rotate/RotateAnimation.d.ts +2 -2
- package/Options/Classes/Particles/Rotate/RotateAnimation.js +2 -1
- package/Options/Classes/Particles/Tilt/TiltAnimation.d.ts +2 -2
- package/Options/Classes/Particles/Tilt/TiltAnimation.js +2 -1
- package/Options/Classes/Particles/Twinkle/TwinkleValues.d.ts +2 -2
- package/Options/Classes/Particles/Twinkle/TwinkleValues.js +2 -1
- package/Options/Interfaces/IAnimation.d.ts +3 -2
- package/Options/Interfaces/Particles/Move/IAttract.d.ts +3 -2
- package/Options/Interfaces/Particles/Move/IMoveAngle.d.ts +3 -2
- package/Options/Interfaces/Particles/Move/IMoveGravity.d.ts +3 -2
- package/Options/Interfaces/Particles/Orbit/IOrbit.d.ts +4 -3
- package/Options/Interfaces/Particles/Repulse/IRepulse.d.ts +5 -4
- package/Options/Interfaces/Particles/Roll/IRollLight.d.ts +2 -1
- package/Options/Interfaces/Particles/Rotate/IRotateAnimation.d.ts +2 -1
- package/Options/Interfaces/Particles/Tilt/ITiltAnimation.d.ts +2 -1
- package/Options/Interfaces/Particles/Twinkle/ITwinkleValues.d.ts +3 -2
- package/Plugins/Absorbers/AbsorberInstance.js +1 -1
- package/Plugins/Absorbers/Options/Classes/Absorber.d.ts +2 -2
- package/Plugins/Absorbers/Options/Classes/Absorber.js +8 -4
- package/Plugins/Absorbers/Options/Interfaces/IAbsorber.d.ts +2 -2
- package/Plugins/Emitters/EmitterInstance.js +11 -10
- package/Plugins/Emitters/Options/Classes/Emitter.d.ts +2 -2
- package/Plugins/Emitters/Options/Classes/Emitter.js +8 -5
- package/Plugins/Emitters/Options/Interfaces/IEmitter.d.ts +2 -2
- package/Updaters/Angle/AngleUpdater.js +2 -1
- package/Updaters/Opacity/OpacityUpdater.js +3 -2
- package/Updaters/Roll/RollUpdater.js +3 -3
- package/Updaters/Tilt/TiltUpdater.js +1 -1
- package/Utils/ColorUtils.js +1 -1
- package/browser/Core/Canvas.js +5 -6
- package/browser/Core/Interfaces/ICoordinates.d.ts +8 -0
- package/browser/Core/Interfaces/IParticleGravity.d.ts +5 -0
- package/browser/Core/Interfaces/IParticleGravity.js +1 -0
- package/browser/Core/Interfaces/index.d.ts +1 -0
- package/browser/Core/Interfaces/index.js +1 -0
- package/browser/Core/Particle.d.ts +3 -1
- package/browser/Core/Particle.js +9 -7
- package/browser/Core/Particles.js +2 -1
- package/browser/Core/Retina.js +7 -7
- package/browser/Core/Utils/ParticlesMover.js +2 -2
- package/browser/Interactions/Particles/Links/LinkInstance.js +2 -2
- package/browser/Options/Classes/AnimatableGradient.d.ts +4 -4
- package/browser/Options/Classes/AnimatableGradient.js +4 -4
- package/browser/Options/Classes/AnimationOptions.d.ts +5 -5
- package/browser/Options/Classes/AnimationOptions.js +3 -2
- package/browser/Options/Classes/ColorAnimation.d.ts +2 -2
- package/browser/Options/Classes/ColorAnimation.js +2 -2
- package/browser/Options/Classes/Particles/Move/Attract.d.ts +2 -2
- package/browser/Options/Classes/Particles/Move/Attract.js +2 -1
- package/browser/Options/Classes/Particles/Move/MoveAngle.d.ts +3 -3
- package/browser/Options/Classes/Particles/Move/MoveAngle.js +3 -2
- package/browser/Options/Classes/Particles/Move/MoveGravity.d.ts +5 -5
- package/browser/Options/Classes/Particles/Move/MoveGravity.js +3 -2
- package/browser/Options/Classes/Particles/Orbit/Orbit.d.ts +4 -4
- package/browser/Options/Classes/Particles/Orbit/Orbit.js +4 -3
- package/browser/Options/Classes/Particles/Repulse/Repulse.d.ts +5 -5
- package/browser/Options/Classes/Particles/Repulse/Repulse.js +5 -4
- package/browser/Options/Classes/Particles/Roll/RollLight.d.ts +2 -2
- package/browser/Options/Classes/Particles/Roll/RollLight.js +2 -1
- package/browser/Options/Classes/Particles/Rotate/RotateAnimation.d.ts +2 -2
- package/browser/Options/Classes/Particles/Rotate/RotateAnimation.js +2 -1
- package/browser/Options/Classes/Particles/Tilt/TiltAnimation.d.ts +2 -2
- package/browser/Options/Classes/Particles/Tilt/TiltAnimation.js +2 -1
- package/browser/Options/Classes/Particles/Twinkle/TwinkleValues.d.ts +2 -2
- package/browser/Options/Classes/Particles/Twinkle/TwinkleValues.js +2 -1
- package/browser/Options/Interfaces/IAnimation.d.ts +3 -2
- package/browser/Options/Interfaces/Particles/Move/IAttract.d.ts +3 -2
- package/browser/Options/Interfaces/Particles/Move/IMoveAngle.d.ts +3 -2
- package/browser/Options/Interfaces/Particles/Move/IMoveGravity.d.ts +3 -2
- package/browser/Options/Interfaces/Particles/Orbit/IOrbit.d.ts +4 -3
- package/browser/Options/Interfaces/Particles/Repulse/IRepulse.d.ts +5 -4
- package/browser/Options/Interfaces/Particles/Roll/IRollLight.d.ts +2 -1
- package/browser/Options/Interfaces/Particles/Rotate/IRotateAnimation.d.ts +2 -1
- package/browser/Options/Interfaces/Particles/Tilt/ITiltAnimation.d.ts +2 -1
- package/browser/Options/Interfaces/Particles/Twinkle/ITwinkleValues.d.ts +3 -2
- package/browser/Plugins/Absorbers/AbsorberInstance.js +1 -1
- package/browser/Plugins/Absorbers/Options/Classes/Absorber.d.ts +2 -2
- package/browser/Plugins/Absorbers/Options/Classes/Absorber.js +8 -4
- package/browser/Plugins/Absorbers/Options/Interfaces/IAbsorber.d.ts +2 -2
- package/browser/Plugins/Emitters/EmitterInstance.js +11 -10
- package/browser/Plugins/Emitters/Options/Classes/Emitter.d.ts +2 -2
- package/browser/Plugins/Emitters/Options/Classes/Emitter.js +8 -5
- package/browser/Plugins/Emitters/Options/Interfaces/IEmitter.d.ts +2 -2
- package/browser/Updaters/Angle/AngleUpdater.js +2 -1
- package/browser/Updaters/Opacity/OpacityUpdater.js +3 -2
- package/browser/Updaters/Roll/RollUpdater.js +3 -3
- package/browser/Updaters/Tilt/TiltUpdater.js +1 -1
- package/browser/Utils/ColorUtils.js +2 -2
- package/esm/Core/Canvas.js +5 -6
- package/esm/Core/Interfaces/ICoordinates.d.ts +8 -0
- package/esm/Core/Interfaces/IParticleGravity.d.ts +5 -0
- package/esm/Core/Interfaces/IParticleGravity.js +1 -0
- package/esm/Core/Interfaces/index.d.ts +1 -0
- package/esm/Core/Interfaces/index.js +1 -0
- package/esm/Core/Particle.d.ts +3 -1
- package/esm/Core/Particle.js +9 -7
- package/esm/Core/Particles.js +2 -1
- package/esm/Core/Retina.js +7 -7
- package/esm/Core/Utils/ParticlesMover.js +2 -2
- package/esm/Interactions/Particles/Links/LinkInstance.js +2 -2
- package/esm/Options/Classes/AnimatableGradient.d.ts +4 -4
- package/esm/Options/Classes/AnimatableGradient.js +4 -4
- package/esm/Options/Classes/AnimationOptions.d.ts +5 -5
- package/esm/Options/Classes/AnimationOptions.js +3 -2
- package/esm/Options/Classes/ColorAnimation.d.ts +2 -2
- package/esm/Options/Classes/ColorAnimation.js +2 -2
- package/esm/Options/Classes/Particles/Move/Attract.d.ts +2 -2
- package/esm/Options/Classes/Particles/Move/Attract.js +2 -1
- package/esm/Options/Classes/Particles/Move/MoveAngle.d.ts +3 -3
- package/esm/Options/Classes/Particles/Move/MoveAngle.js +3 -2
- package/esm/Options/Classes/Particles/Move/MoveGravity.d.ts +5 -5
- package/esm/Options/Classes/Particles/Move/MoveGravity.js +3 -2
- package/esm/Options/Classes/Particles/Orbit/Orbit.d.ts +4 -4
- package/esm/Options/Classes/Particles/Orbit/Orbit.js +4 -3
- package/esm/Options/Classes/Particles/Repulse/Repulse.d.ts +5 -5
- package/esm/Options/Classes/Particles/Repulse/Repulse.js +5 -4
- package/esm/Options/Classes/Particles/Roll/RollLight.d.ts +2 -2
- package/esm/Options/Classes/Particles/Roll/RollLight.js +2 -1
- package/esm/Options/Classes/Particles/Rotate/RotateAnimation.d.ts +2 -2
- package/esm/Options/Classes/Particles/Rotate/RotateAnimation.js +2 -1
- package/esm/Options/Classes/Particles/Tilt/TiltAnimation.d.ts +2 -2
- package/esm/Options/Classes/Particles/Tilt/TiltAnimation.js +2 -1
- package/esm/Options/Classes/Particles/Twinkle/TwinkleValues.d.ts +2 -2
- package/esm/Options/Classes/Particles/Twinkle/TwinkleValues.js +2 -1
- package/esm/Options/Interfaces/IAnimation.d.ts +3 -2
- package/esm/Options/Interfaces/Particles/Move/IAttract.d.ts +3 -2
- package/esm/Options/Interfaces/Particles/Move/IMoveAngle.d.ts +3 -2
- package/esm/Options/Interfaces/Particles/Move/IMoveGravity.d.ts +3 -2
- package/esm/Options/Interfaces/Particles/Orbit/IOrbit.d.ts +4 -3
- package/esm/Options/Interfaces/Particles/Repulse/IRepulse.d.ts +5 -4
- package/esm/Options/Interfaces/Particles/Roll/IRollLight.d.ts +2 -1
- package/esm/Options/Interfaces/Particles/Rotate/IRotateAnimation.d.ts +2 -1
- package/esm/Options/Interfaces/Particles/Tilt/ITiltAnimation.d.ts +2 -1
- package/esm/Options/Interfaces/Particles/Twinkle/ITwinkleValues.d.ts +3 -2
- package/esm/Plugins/Absorbers/AbsorberInstance.js +1 -1
- package/esm/Plugins/Absorbers/Options/Classes/Absorber.d.ts +2 -2
- package/esm/Plugins/Absorbers/Options/Classes/Absorber.js +8 -4
- package/esm/Plugins/Absorbers/Options/Interfaces/IAbsorber.d.ts +2 -2
- package/esm/Plugins/Emitters/EmitterInstance.js +11 -10
- package/esm/Plugins/Emitters/Options/Classes/Emitter.d.ts +2 -2
- package/esm/Plugins/Emitters/Options/Classes/Emitter.js +8 -5
- package/esm/Plugins/Emitters/Options/Interfaces/IEmitter.d.ts +2 -2
- package/esm/Updaters/Angle/AngleUpdater.js +2 -1
- package/esm/Updaters/Opacity/OpacityUpdater.js +3 -2
- package/esm/Updaters/Roll/RollUpdater.js +3 -3
- package/esm/Updaters/Tilt/TiltUpdater.js +1 -1
- package/esm/Utils/ColorUtils.js +2 -2
- package/package.json +1 -1
- package/report.html +2 -2
- package/report.slim.html +2 -2
- package/scripts/install.js +11 -2
- package/tsparticles.engine.js +47 -47
- package/tsparticles.engine.min.js +2 -2
- package/tsparticles.interaction.external.attract.js +319 -36
- package/tsparticles.interaction.external.attract.min.js +1 -1
- package/tsparticles.interaction.external.bounce.js +319 -36
- package/tsparticles.interaction.external.bounce.min.js +1 -1
- package/tsparticles.interaction.external.bubble.js +319 -36
- package/tsparticles.interaction.external.bubble.min.js +1 -1
- package/tsparticles.interaction.external.connect.js +319 -36
- package/tsparticles.interaction.external.connect.min.js +1 -1
- package/tsparticles.interaction.external.grab.js +319 -36
- package/tsparticles.interaction.external.grab.min.js +1 -1
- package/tsparticles.interaction.external.repulse.js +319 -36
- package/tsparticles.interaction.external.repulse.min.js +1 -1
- package/tsparticles.interaction.external.trail.js +319 -36
- package/tsparticles.interaction.external.trail.min.js +1 -1
- package/tsparticles.interaction.particles.attract.js +319 -36
- package/tsparticles.interaction.particles.attract.min.js +1 -1
- package/tsparticles.interaction.particles.collisions.js +319 -36
- package/tsparticles.interaction.particles.collisions.min.js +1 -1
- package/tsparticles.interaction.particles.links.js +320 -37
- package/tsparticles.interaction.particles.links.min.js +2 -2
- package/tsparticles.js +81 -74
- package/tsparticles.min.js +2 -2
- package/tsparticles.pathseg.min.js +1 -1
- package/tsparticles.plugins.absorbers.js +327 -41
- package/tsparticles.plugins.absorbers.min.js +2 -2
- package/tsparticles.plugins.emitters.js +438 -151
- package/tsparticles.plugins.emitters.min.js +2 -2
- package/tsparticles.plugins.polygonMask.js +319 -36
- package/tsparticles.plugins.polygonMask.min.js +1 -1
- package/tsparticles.shape.circle.min.js +1 -1
- package/tsparticles.shape.image.js +319 -36
- package/tsparticles.shape.image.min.js +1 -1
- package/tsparticles.shape.line.min.js +1 -1
- package/tsparticles.shape.polygon.min.js +1 -1
- package/tsparticles.shape.square.min.js +1 -1
- package/tsparticles.shape.star.min.js +1 -1
- package/tsparticles.shape.text.js +319 -36
- package/tsparticles.shape.text.min.js +1 -1
- package/tsparticles.slim.js +51 -51
- package/tsparticles.slim.min.js +2 -2
- package/tsparticles.updater.angle.js +320 -37
- package/tsparticles.updater.angle.min.js +2 -2
- package/tsparticles.updater.color.js +319 -36
- package/tsparticles.updater.color.min.js +2 -2
- package/tsparticles.updater.life.js +319 -36
- package/tsparticles.updater.life.min.js +1 -1
- package/tsparticles.updater.opacity.js +321 -38
- package/tsparticles.updater.opacity.min.js +2 -2
- package/tsparticles.updater.outModes.js +319 -36
- package/tsparticles.updater.outModes.min.js +1 -1
- package/tsparticles.updater.roll.js +322 -39
- package/tsparticles.updater.roll.min.js +2 -2
- package/tsparticles.updater.size.js +319 -36
- package/tsparticles.updater.size.min.js +1 -1
- package/tsparticles.updater.strokeColor.js +319 -36
- package/tsparticles.updater.strokeColor.min.js +2 -2
- package/tsparticles.updater.tilt.js +320 -37
- package/tsparticles.updater.tilt.min.js +2 -2
- package/tsparticles.updater.wobble.js +319 -36
- package/tsparticles.updater.wobble.min.js +1 -1
- package/umd/Core/Canvas.js +4 -5
- package/umd/Core/Interfaces/ICoordinates.d.ts +8 -0
- package/umd/Core/Interfaces/IParticleGravity.d.ts +5 -0
- package/umd/Core/Interfaces/IParticleGravity.js +12 -0
- package/umd/Core/Interfaces/index.d.ts +1 -0
- package/umd/Core/Interfaces/index.js +2 -1
- package/umd/Core/Particle.d.ts +3 -1
- package/umd/Core/Particle.js +9 -7
- package/umd/Core/Particles.js +2 -1
- package/umd/Core/Retina.js +7 -7
- package/umd/Core/Utils/ParticlesMover.js +2 -2
- package/umd/Interactions/Particles/Links/LinkInstance.js +1 -1
- package/umd/Options/Classes/AnimatableGradient.d.ts +4 -4
- package/umd/Options/Classes/AnimatableGradient.js +4 -4
- package/umd/Options/Classes/AnimationOptions.d.ts +5 -5
- package/umd/Options/Classes/AnimationOptions.js +4 -3
- package/umd/Options/Classes/ColorAnimation.d.ts +2 -2
- package/umd/Options/Classes/ColorAnimation.js +2 -2
- package/umd/Options/Classes/Particles/Move/Attract.d.ts +2 -2
- package/umd/Options/Classes/Particles/Move/Attract.js +3 -2
- package/umd/Options/Classes/Particles/Move/MoveAngle.d.ts +3 -3
- package/umd/Options/Classes/Particles/Move/MoveAngle.js +4 -3
- package/umd/Options/Classes/Particles/Move/MoveGravity.d.ts +5 -5
- package/umd/Options/Classes/Particles/Move/MoveGravity.js +4 -3
- package/umd/Options/Classes/Particles/Orbit/Orbit.d.ts +4 -4
- package/umd/Options/Classes/Particles/Orbit/Orbit.js +5 -4
- package/umd/Options/Classes/Particles/Repulse/Repulse.d.ts +5 -5
- package/umd/Options/Classes/Particles/Repulse/Repulse.js +6 -5
- package/umd/Options/Classes/Particles/Roll/RollLight.d.ts +2 -2
- package/umd/Options/Classes/Particles/Roll/RollLight.js +3 -2
- package/umd/Options/Classes/Particles/Rotate/RotateAnimation.d.ts +2 -2
- package/umd/Options/Classes/Particles/Rotate/RotateAnimation.js +3 -2
- package/umd/Options/Classes/Particles/Tilt/TiltAnimation.d.ts +2 -2
- package/umd/Options/Classes/Particles/Tilt/TiltAnimation.js +3 -2
- package/umd/Options/Classes/Particles/Twinkle/TwinkleValues.d.ts +2 -2
- package/umd/Options/Classes/Particles/Twinkle/TwinkleValues.js +3 -2
- package/umd/Options/Interfaces/IAnimation.d.ts +3 -2
- package/umd/Options/Interfaces/Particles/Move/IAttract.d.ts +3 -2
- package/umd/Options/Interfaces/Particles/Move/IMoveAngle.d.ts +3 -2
- package/umd/Options/Interfaces/Particles/Move/IMoveGravity.d.ts +3 -2
- package/umd/Options/Interfaces/Particles/Orbit/IOrbit.d.ts +4 -3
- package/umd/Options/Interfaces/Particles/Repulse/IRepulse.d.ts +5 -4
- package/umd/Options/Interfaces/Particles/Roll/IRollLight.d.ts +2 -1
- package/umd/Options/Interfaces/Particles/Rotate/IRotateAnimation.d.ts +2 -1
- package/umd/Options/Interfaces/Particles/Tilt/ITiltAnimation.d.ts +2 -1
- package/umd/Options/Interfaces/Particles/Twinkle/ITwinkleValues.d.ts +3 -2
- package/umd/Plugins/Absorbers/AbsorberInstance.js +1 -1
- package/umd/Plugins/Absorbers/Options/Classes/Absorber.d.ts +2 -2
- package/umd/Plugins/Absorbers/Options/Classes/Absorber.js +9 -5
- package/umd/Plugins/Absorbers/Options/Interfaces/IAbsorber.d.ts +2 -2
- package/umd/Plugins/Emitters/EmitterInstance.js +11 -10
- package/umd/Plugins/Emitters/Options/Classes/Emitter.d.ts +2 -2
- package/umd/Plugins/Emitters/Options/Classes/Emitter.js +9 -6
- package/umd/Plugins/Emitters/Options/Interfaces/IEmitter.d.ts +2 -2
- package/umd/Updaters/Angle/AngleUpdater.js +2 -1
- package/umd/Updaters/Opacity/OpacityUpdater.js +3 -2
- package/umd/Updaters/Roll/RollUpdater.js +3 -3
- package/umd/Updaters/Tilt/TiltUpdater.js +1 -1
- package/umd/Utils/ColorUtils.js +1 -1
|
@@ -613,7 +613,7 @@
|
|
|
613
613
|
}
|
|
614
614
|
const container = this.container, slowFactor = this.getProximitySpeedFactor(particle), baseSpeed = ((_a = (_d = particle.retina).moveSpeed) !== null && _a !== void 0 ? _a : _d.moveSpeed = getRangeValue(moveOptions.speed) * container.retina.pixelRatio) * container.retina.reduceFactor, moveDrift = (_b = (_e = particle.retina).moveDrift) !== null && _b !== void 0 ? _b : _e.moveDrift = getRangeValue(particle.options.move.drift) * container.retina.pixelRatio, maxSize = getRangeMax(particleOptions.size.value) * container.retina.pixelRatio, sizeFactor = moveOptions.size ? particle.getRadius() / maxSize : 1, diffFactor = 2, speedFactor = sizeFactor * slowFactor * (delta.factor || 1) / diffFactor, moveSpeed = baseSpeed * speedFactor;
|
|
615
615
|
this.applyPath(particle, delta);
|
|
616
|
-
const gravityOptions =
|
|
616
|
+
const gravityOptions = particle.gravity;
|
|
617
617
|
const gravityFactor = gravityOptions.enable && gravityOptions.inverse ? -1 : 1;
|
|
618
618
|
if (gravityOptions.enable && moveSpeed) {
|
|
619
619
|
particle.velocity.y += gravityFactor * (gravityOptions.acceleration * delta.factor) / (60 * moveSpeed);
|
|
@@ -627,7 +627,7 @@
|
|
|
627
627
|
}
|
|
628
628
|
const velocity = particle.velocity.mult(moveSpeed);
|
|
629
629
|
const maxSpeed = (_c = particle.retina.maxSpeed) !== null && _c !== void 0 ? _c : container.retina.maxSpeed;
|
|
630
|
-
if (gravityOptions.enable &&
|
|
630
|
+
if (gravityOptions.enable && maxSpeed > 0 && (!gravityOptions.inverse && velocity.y >= 0 && velocity.y >= maxSpeed || gravityOptions.inverse && velocity.y <= 0 && velocity.y <= -maxSpeed)) {
|
|
631
631
|
velocity.y = gravityFactor * maxSpeed;
|
|
632
632
|
if (moveSpeed) {
|
|
633
633
|
particle.velocity.y = velocity.y / moveSpeed;
|
|
@@ -986,10 +986,7 @@
|
|
|
986
986
|
const container = this.container;
|
|
987
987
|
const pxRatio = container.retina.pixelRatio;
|
|
988
988
|
const size = container.canvas.size;
|
|
989
|
-
const oldSize = {
|
|
990
|
-
width: size.width,
|
|
991
|
-
height: size.height
|
|
992
|
-
};
|
|
989
|
+
const oldSize = Object.assign({}, size);
|
|
993
990
|
size.width = this.element.offsetWidth * pxRatio;
|
|
994
991
|
size.height = this.element.offsetHeight * pxRatio;
|
|
995
992
|
this.element.width = size.width;
|
|
@@ -1048,7 +1045,7 @@
|
|
|
1048
1045
|
const zIndexOptions = particle.options.zIndex;
|
|
1049
1046
|
const zOpacityFactor = (1 - particle.zIndexFactor) ** zIndexOptions.opacityRate;
|
|
1050
1047
|
const radius = particle.getRadius();
|
|
1051
|
-
const opacity = twinkling ? twinkle.opacity : (_d = (_b = particle.bubble.opacity) !== null && _b !== void 0 ? _b : (_c = particle.opacity) === null || _c === void 0 ? void 0 : _c.value) !== null && _d !== void 0 ? _d : 1;
|
|
1048
|
+
const opacity = twinkling ? getRangeValue(twinkle.opacity) : (_d = (_b = particle.bubble.opacity) !== null && _b !== void 0 ? _b : (_c = particle.opacity) === null || _c === void 0 ? void 0 : _c.value) !== null && _d !== void 0 ? _d : 1;
|
|
1052
1049
|
const strokeOpacity = (_f = (_e = particle.stroke) === null || _e === void 0 ? void 0 : _e.opacity) !== null && _f !== void 0 ? _f : opacity;
|
|
1053
1050
|
const zOpacity = opacity * zOpacityFactor;
|
|
1054
1051
|
const fillColorValue = fColor ? getStyleFromHsl(fColor, zOpacity) : undefined;
|
|
@@ -1319,7 +1316,7 @@
|
|
|
1319
1316
|
return;
|
|
1320
1317
|
}
|
|
1321
1318
|
if (data.count !== undefined) {
|
|
1322
|
-
this.count = data.count;
|
|
1319
|
+
this.count = setRangeValue(data.count);
|
|
1323
1320
|
}
|
|
1324
1321
|
if (data.enable !== undefined) {
|
|
1325
1322
|
this.enable = data.enable;
|
|
@@ -1328,7 +1325,7 @@
|
|
|
1328
1325
|
this.offset = setRangeValue(data.offset);
|
|
1329
1326
|
}
|
|
1330
1327
|
if (data.speed !== undefined) {
|
|
1331
|
-
this.speed = data.speed;
|
|
1328
|
+
this.speed = setRangeValue(data.speed);
|
|
1332
1329
|
}
|
|
1333
1330
|
if (data.sync !== undefined) {
|
|
1334
1331
|
this.sync = data.sync;
|
|
@@ -1476,13 +1473,13 @@
|
|
|
1476
1473
|
return;
|
|
1477
1474
|
}
|
|
1478
1475
|
if (data.count !== undefined) {
|
|
1479
|
-
this.count = data.count;
|
|
1476
|
+
this.count = setRangeValue(data.count);
|
|
1480
1477
|
}
|
|
1481
1478
|
if (data.enable !== undefined) {
|
|
1482
1479
|
this.enable = data.enable;
|
|
1483
1480
|
}
|
|
1484
1481
|
if (data.speed !== undefined) {
|
|
1485
|
-
this.speed = data.speed;
|
|
1482
|
+
this.speed = setRangeValue(data.speed);
|
|
1486
1483
|
}
|
|
1487
1484
|
if (data.sync !== undefined) {
|
|
1488
1485
|
this.sync = data.sync;
|
|
@@ -1502,13 +1499,13 @@
|
|
|
1502
1499
|
return;
|
|
1503
1500
|
}
|
|
1504
1501
|
if (data.count !== undefined) {
|
|
1505
|
-
this.count = data.count;
|
|
1502
|
+
this.count = setRangeValue(data.count);
|
|
1506
1503
|
}
|
|
1507
1504
|
if (data.enable !== undefined) {
|
|
1508
1505
|
this.enable = data.enable;
|
|
1509
1506
|
}
|
|
1510
1507
|
if (data.speed !== undefined) {
|
|
1511
|
-
this.speed = data.speed;
|
|
1508
|
+
this.speed = setRangeValue(data.speed);
|
|
1512
1509
|
}
|
|
1513
1510
|
if (data.sync !== undefined) {
|
|
1514
1511
|
this.sync = data.sync;
|
|
@@ -1680,6 +1677,90 @@
|
|
|
1680
1677
|
this.duration.load(data.duration);
|
|
1681
1678
|
}
|
|
1682
1679
|
}
|
|
1680
|
+
class Attract_Attract {
|
|
1681
|
+
constructor() {
|
|
1682
|
+
this.distance = 200;
|
|
1683
|
+
this.enable = false;
|
|
1684
|
+
this.rotate = {
|
|
1685
|
+
x: 3e3,
|
|
1686
|
+
y: 3e3
|
|
1687
|
+
};
|
|
1688
|
+
}
|
|
1689
|
+
get rotateX() {
|
|
1690
|
+
return this.rotate.x;
|
|
1691
|
+
}
|
|
1692
|
+
set rotateX(value) {
|
|
1693
|
+
this.rotate.x = value;
|
|
1694
|
+
}
|
|
1695
|
+
get rotateY() {
|
|
1696
|
+
return this.rotate.y;
|
|
1697
|
+
}
|
|
1698
|
+
set rotateY(value) {
|
|
1699
|
+
this.rotate.y = value;
|
|
1700
|
+
}
|
|
1701
|
+
load(data) {
|
|
1702
|
+
var _a, _b, _c, _d;
|
|
1703
|
+
if (!data) {
|
|
1704
|
+
return;
|
|
1705
|
+
}
|
|
1706
|
+
if (data.distance !== undefined) {
|
|
1707
|
+
this.distance = setRangeValue(data.distance);
|
|
1708
|
+
}
|
|
1709
|
+
if (data.enable !== undefined) {
|
|
1710
|
+
this.enable = data.enable;
|
|
1711
|
+
}
|
|
1712
|
+
const rotateX = (_b = (_a = data.rotate) === null || _a === void 0 ? void 0 : _a.x) !== null && _b !== void 0 ? _b : data.rotateX;
|
|
1713
|
+
if (rotateX !== undefined) {
|
|
1714
|
+
this.rotate.x = rotateX;
|
|
1715
|
+
}
|
|
1716
|
+
const rotateY = (_d = (_c = data.rotate) === null || _c === void 0 ? void 0 : _c.y) !== null && _d !== void 0 ? _d : data.rotateY;
|
|
1717
|
+
if (rotateY !== undefined) {
|
|
1718
|
+
this.rotate.y = rotateY;
|
|
1719
|
+
}
|
|
1720
|
+
}
|
|
1721
|
+
}
|
|
1722
|
+
class MoveAngle_MoveAngle {
|
|
1723
|
+
constructor() {
|
|
1724
|
+
this.offset = 0;
|
|
1725
|
+
this.value = 90;
|
|
1726
|
+
}
|
|
1727
|
+
load(data) {
|
|
1728
|
+
if (data === undefined) {
|
|
1729
|
+
return;
|
|
1730
|
+
}
|
|
1731
|
+
if (data.offset !== undefined) {
|
|
1732
|
+
this.offset = setRangeValue(data.offset);
|
|
1733
|
+
}
|
|
1734
|
+
if (data.value !== undefined) {
|
|
1735
|
+
this.value = setRangeValue(data.value);
|
|
1736
|
+
}
|
|
1737
|
+
}
|
|
1738
|
+
}
|
|
1739
|
+
class MoveGravity_MoveGravity {
|
|
1740
|
+
constructor() {
|
|
1741
|
+
this.acceleration = 9.81;
|
|
1742
|
+
this.enable = false;
|
|
1743
|
+
this.inverse = false;
|
|
1744
|
+
this.maxSpeed = 50;
|
|
1745
|
+
}
|
|
1746
|
+
load(data) {
|
|
1747
|
+
if (!data) {
|
|
1748
|
+
return;
|
|
1749
|
+
}
|
|
1750
|
+
if (data.acceleration !== undefined) {
|
|
1751
|
+
this.acceleration = setRangeValue(data.acceleration);
|
|
1752
|
+
}
|
|
1753
|
+
if (data.enable !== undefined) {
|
|
1754
|
+
this.enable = data.enable;
|
|
1755
|
+
}
|
|
1756
|
+
if (data.inverse !== undefined) {
|
|
1757
|
+
this.inverse = data.inverse;
|
|
1758
|
+
}
|
|
1759
|
+
if (data.maxSpeed !== undefined) {
|
|
1760
|
+
this.maxSpeed = setRangeValue(data.maxSpeed);
|
|
1761
|
+
}
|
|
1762
|
+
}
|
|
1763
|
+
}
|
|
1683
1764
|
class PathDelay_PathDelay extends(null && ValueWithRandom){
|
|
1684
1765
|
constructor() {
|
|
1685
1766
|
super();
|
|
@@ -1841,6 +1922,70 @@
|
|
|
1841
1922
|
}
|
|
1842
1923
|
}
|
|
1843
1924
|
}
|
|
1925
|
+
class AnimationOptions_AnimationOptions {
|
|
1926
|
+
constructor() {
|
|
1927
|
+
this.count = 0;
|
|
1928
|
+
this.enable = false;
|
|
1929
|
+
this.speed = 1;
|
|
1930
|
+
this.sync = false;
|
|
1931
|
+
}
|
|
1932
|
+
load(data) {
|
|
1933
|
+
if (!data) {
|
|
1934
|
+
return;
|
|
1935
|
+
}
|
|
1936
|
+
if (data.count !== undefined) {
|
|
1937
|
+
this.count = setRangeValue(data.count);
|
|
1938
|
+
}
|
|
1939
|
+
if (data.enable !== undefined) {
|
|
1940
|
+
this.enable = data.enable;
|
|
1941
|
+
}
|
|
1942
|
+
if (data.speed !== undefined) {
|
|
1943
|
+
this.speed = setRangeValue(data.speed);
|
|
1944
|
+
}
|
|
1945
|
+
if (data.sync !== undefined) {
|
|
1946
|
+
this.sync = data.sync;
|
|
1947
|
+
}
|
|
1948
|
+
}
|
|
1949
|
+
}
|
|
1950
|
+
class OpacityAnimation_OpacityAnimation extends(null && AnimationOptions){
|
|
1951
|
+
constructor() {
|
|
1952
|
+
super();
|
|
1953
|
+
this.destroy = "none";
|
|
1954
|
+
this.enable = false;
|
|
1955
|
+
this.speed = 2;
|
|
1956
|
+
this.startValue = "random";
|
|
1957
|
+
this.sync = false;
|
|
1958
|
+
}
|
|
1959
|
+
get opacity_min() {
|
|
1960
|
+
return this.minimumValue;
|
|
1961
|
+
}
|
|
1962
|
+
set opacity_min(value) {
|
|
1963
|
+
this.minimumValue = value;
|
|
1964
|
+
}
|
|
1965
|
+
load(data) {
|
|
1966
|
+
var _a;
|
|
1967
|
+
if (data === undefined) {
|
|
1968
|
+
return;
|
|
1969
|
+
}
|
|
1970
|
+
super.load(data);
|
|
1971
|
+
if (data.destroy !== undefined) {
|
|
1972
|
+
this.destroy = data.destroy;
|
|
1973
|
+
}
|
|
1974
|
+
if (data.enable !== undefined) {
|
|
1975
|
+
this.enable = data.enable;
|
|
1976
|
+
}
|
|
1977
|
+
this.minimumValue = (_a = data.minimumValue) !== null && _a !== void 0 ? _a : data.opacity_min;
|
|
1978
|
+
if (data.speed !== undefined) {
|
|
1979
|
+
this.speed = data.speed;
|
|
1980
|
+
}
|
|
1981
|
+
if (data.startValue !== undefined) {
|
|
1982
|
+
this.startValue = data.startValue;
|
|
1983
|
+
}
|
|
1984
|
+
if (data.sync !== undefined) {
|
|
1985
|
+
this.sync = data.sync;
|
|
1986
|
+
}
|
|
1987
|
+
}
|
|
1988
|
+
}
|
|
1844
1989
|
class Opacity_Opacity extends(null && ValueWithRandom){
|
|
1845
1990
|
constructor() {
|
|
1846
1991
|
super();
|
|
@@ -1899,13 +2044,13 @@
|
|
|
1899
2044
|
this.enable = data.enable;
|
|
1900
2045
|
}
|
|
1901
2046
|
if (data.opacity !== undefined) {
|
|
1902
|
-
this.opacity = data.opacity;
|
|
2047
|
+
this.opacity = setRangeValue(data.opacity);
|
|
1903
2048
|
}
|
|
1904
2049
|
if (data.width !== undefined) {
|
|
1905
|
-
this.width = data.width;
|
|
2050
|
+
this.width = setRangeValue(data.width);
|
|
1906
2051
|
}
|
|
1907
2052
|
if (data.radius !== undefined) {
|
|
1908
|
-
this.radius = data.radius;
|
|
2053
|
+
this.radius = setRangeValue(data.radius);
|
|
1909
2054
|
}
|
|
1910
2055
|
if (data.color !== undefined) {
|
|
1911
2056
|
this.color = OptionsColor.create(this.color, data.color);
|
|
@@ -1930,16 +2075,33 @@
|
|
|
1930
2075
|
this.enabled = data.enabled;
|
|
1931
2076
|
}
|
|
1932
2077
|
if (data.distance !== undefined) {
|
|
1933
|
-
this.distance = data.distance;
|
|
2078
|
+
this.distance = setRangeValue(data.distance);
|
|
1934
2079
|
}
|
|
1935
2080
|
if (data.duration !== undefined) {
|
|
1936
|
-
this.duration = data.duration;
|
|
2081
|
+
this.duration = setRangeValue(data.duration);
|
|
1937
2082
|
}
|
|
1938
2083
|
if (data.factor !== undefined) {
|
|
1939
|
-
this.factor = data.factor;
|
|
2084
|
+
this.factor = setRangeValue(data.factor);
|
|
1940
2085
|
}
|
|
1941
2086
|
if (data.speed !== undefined) {
|
|
1942
|
-
this.speed = data.speed;
|
|
2087
|
+
this.speed = setRangeValue(data.speed);
|
|
2088
|
+
}
|
|
2089
|
+
}
|
|
2090
|
+
}
|
|
2091
|
+
class RollLight_RollLight {
|
|
2092
|
+
constructor() {
|
|
2093
|
+
this.enable = false;
|
|
2094
|
+
this.value = 0;
|
|
2095
|
+
}
|
|
2096
|
+
load(data) {
|
|
2097
|
+
if (!data) {
|
|
2098
|
+
return;
|
|
2099
|
+
}
|
|
2100
|
+
if (data.enable !== undefined) {
|
|
2101
|
+
this.enable = data.enable;
|
|
2102
|
+
}
|
|
2103
|
+
if (data.value !== undefined) {
|
|
2104
|
+
this.value = setRangeValue(data.value);
|
|
1943
2105
|
}
|
|
1944
2106
|
}
|
|
1945
2107
|
}
|
|
@@ -1971,6 +2133,27 @@
|
|
|
1971
2133
|
}
|
|
1972
2134
|
}
|
|
1973
2135
|
}
|
|
2136
|
+
class RotateAnimation_RotateAnimation {
|
|
2137
|
+
constructor() {
|
|
2138
|
+
this.enable = false;
|
|
2139
|
+
this.speed = 0;
|
|
2140
|
+
this.sync = false;
|
|
2141
|
+
}
|
|
2142
|
+
load(data) {
|
|
2143
|
+
if (data === undefined) {
|
|
2144
|
+
return;
|
|
2145
|
+
}
|
|
2146
|
+
if (data.enable !== undefined) {
|
|
2147
|
+
this.enable = data.enable;
|
|
2148
|
+
}
|
|
2149
|
+
if (data.speed !== undefined) {
|
|
2150
|
+
this.speed = setRangeValue(data.speed);
|
|
2151
|
+
}
|
|
2152
|
+
if (data.sync !== undefined) {
|
|
2153
|
+
this.sync = data.sync;
|
|
2154
|
+
}
|
|
2155
|
+
}
|
|
2156
|
+
}
|
|
1974
2157
|
class Rotate_Rotate extends(null && ValueWithRandom){
|
|
1975
2158
|
constructor() {
|
|
1976
2159
|
super();
|
|
@@ -2089,6 +2272,45 @@
|
|
|
2089
2272
|
}
|
|
2090
2273
|
}
|
|
2091
2274
|
}
|
|
2275
|
+
class SizeAnimation_SizeAnimation extends(null && AnimationOptions){
|
|
2276
|
+
constructor() {
|
|
2277
|
+
super();
|
|
2278
|
+
this.destroy = "none";
|
|
2279
|
+
this.enable = false;
|
|
2280
|
+
this.speed = 5;
|
|
2281
|
+
this.startValue = "random";
|
|
2282
|
+
this.sync = false;
|
|
2283
|
+
}
|
|
2284
|
+
get size_min() {
|
|
2285
|
+
return this.minimumValue;
|
|
2286
|
+
}
|
|
2287
|
+
set size_min(value) {
|
|
2288
|
+
this.minimumValue = value;
|
|
2289
|
+
}
|
|
2290
|
+
load(data) {
|
|
2291
|
+
var _a;
|
|
2292
|
+
if (data === undefined) {
|
|
2293
|
+
return;
|
|
2294
|
+
}
|
|
2295
|
+
super.load(data);
|
|
2296
|
+
if (data.destroy !== undefined) {
|
|
2297
|
+
this.destroy = data.destroy;
|
|
2298
|
+
}
|
|
2299
|
+
if (data.enable !== undefined) {
|
|
2300
|
+
this.enable = data.enable;
|
|
2301
|
+
}
|
|
2302
|
+
this.minimumValue = (_a = data.minimumValue) !== null && _a !== void 0 ? _a : data.size_min;
|
|
2303
|
+
if (data.speed !== undefined) {
|
|
2304
|
+
this.speed = data.speed;
|
|
2305
|
+
}
|
|
2306
|
+
if (data.startValue !== undefined) {
|
|
2307
|
+
this.startValue = data.startValue;
|
|
2308
|
+
}
|
|
2309
|
+
if (data.sync !== undefined) {
|
|
2310
|
+
this.sync = data.sync;
|
|
2311
|
+
}
|
|
2312
|
+
}
|
|
2313
|
+
}
|
|
2092
2314
|
class Size_Size extends(null && ValueWithRandom){
|
|
2093
2315
|
constructor() {
|
|
2094
2316
|
super();
|
|
@@ -2134,6 +2356,27 @@
|
|
|
2134
2356
|
}
|
|
2135
2357
|
}
|
|
2136
2358
|
}
|
|
2359
|
+
class TiltAnimation_TiltAnimation {
|
|
2360
|
+
constructor() {
|
|
2361
|
+
this.enable = false;
|
|
2362
|
+
this.speed = 0;
|
|
2363
|
+
this.sync = false;
|
|
2364
|
+
}
|
|
2365
|
+
load(data) {
|
|
2366
|
+
if (data === undefined) {
|
|
2367
|
+
return;
|
|
2368
|
+
}
|
|
2369
|
+
if (data.enable !== undefined) {
|
|
2370
|
+
this.enable = data.enable;
|
|
2371
|
+
}
|
|
2372
|
+
if (data.speed !== undefined) {
|
|
2373
|
+
this.speed = setRangeValue(data.speed);
|
|
2374
|
+
}
|
|
2375
|
+
if (data.sync !== undefined) {
|
|
2376
|
+
this.sync = data.sync;
|
|
2377
|
+
}
|
|
2378
|
+
}
|
|
2379
|
+
}
|
|
2137
2380
|
class Tilt_Tilt extends(null && ValueWithRandom){
|
|
2138
2381
|
constructor() {
|
|
2139
2382
|
super();
|
|
@@ -2156,6 +2399,43 @@
|
|
|
2156
2399
|
}
|
|
2157
2400
|
}
|
|
2158
2401
|
}
|
|
2402
|
+
class TwinkleValues_TwinkleValues {
|
|
2403
|
+
constructor() {
|
|
2404
|
+
this.enable = false;
|
|
2405
|
+
this.frequency = .05;
|
|
2406
|
+
this.opacity = 1;
|
|
2407
|
+
}
|
|
2408
|
+
load(data) {
|
|
2409
|
+
if (data === undefined) {
|
|
2410
|
+
return;
|
|
2411
|
+
}
|
|
2412
|
+
if (data.color !== undefined) {
|
|
2413
|
+
this.color = OptionsColor.create(this.color, data.color);
|
|
2414
|
+
}
|
|
2415
|
+
if (data.enable !== undefined) {
|
|
2416
|
+
this.enable = data.enable;
|
|
2417
|
+
}
|
|
2418
|
+
if (data.frequency !== undefined) {
|
|
2419
|
+
this.frequency = data.frequency;
|
|
2420
|
+
}
|
|
2421
|
+
if (data.opacity !== undefined) {
|
|
2422
|
+
this.opacity = setRangeValue(data.opacity);
|
|
2423
|
+
}
|
|
2424
|
+
}
|
|
2425
|
+
}
|
|
2426
|
+
class Twinkle_Twinkle {
|
|
2427
|
+
constructor() {
|
|
2428
|
+
this.lines = new TwinkleValues;
|
|
2429
|
+
this.particles = new TwinkleValues;
|
|
2430
|
+
}
|
|
2431
|
+
load(data) {
|
|
2432
|
+
if (data === undefined) {
|
|
2433
|
+
return;
|
|
2434
|
+
}
|
|
2435
|
+
this.lines.load(data.lines);
|
|
2436
|
+
this.particles.load(data.particles);
|
|
2437
|
+
}
|
|
2438
|
+
}
|
|
2159
2439
|
class Wobble_Wobble {
|
|
2160
2440
|
constructor() {
|
|
2161
2441
|
this.distance = 5;
|
|
@@ -2553,6 +2833,7 @@
|
|
|
2553
2833
|
this.retina = {
|
|
2554
2834
|
maxDistance: {}
|
|
2555
2835
|
};
|
|
2836
|
+
this.ignoresResizeRatio = true;
|
|
2556
2837
|
const pxRatio = container.retina.pixelRatio;
|
|
2557
2838
|
const mainOptions = container.actualOptions;
|
|
2558
2839
|
const particlesOptions = new ParticlesOptions;
|
|
@@ -2592,7 +2873,7 @@
|
|
|
2592
2873
|
max: getRangeMax(sizeRange) * pxRatio,
|
|
2593
2874
|
min: getRangeMin(sizeRange) * pxRatio,
|
|
2594
2875
|
loops: 0,
|
|
2595
|
-
maxLoops: sizeOptions.animation.count
|
|
2876
|
+
maxLoops: getRangeValue(sizeOptions.animation.count)
|
|
2596
2877
|
};
|
|
2597
2878
|
const sizeAnimation = sizeOptions.animation;
|
|
2598
2879
|
if (sizeAnimation.enable) {
|
|
@@ -2626,6 +2907,12 @@
|
|
|
2626
2907
|
this.initialVelocity = this.calculateVelocity();
|
|
2627
2908
|
this.velocity = this.initialVelocity.copy();
|
|
2628
2909
|
this.moveDecay = 1 - getRangeValue(this.options.move.decay);
|
|
2910
|
+
const gravityOptions = this.options.move.gravity;
|
|
2911
|
+
this.gravity = {
|
|
2912
|
+
enable: gravityOptions.enable,
|
|
2913
|
+
acceleration: getRangeValue(gravityOptions.acceleration),
|
|
2914
|
+
inverse: gravityOptions.inverse
|
|
2915
|
+
};
|
|
2629
2916
|
this.position = this.calcPosition(container, position, clamp(zIndexValue, 0, container.zLayers));
|
|
2630
2917
|
this.initialPosition = this.position.copy();
|
|
2631
2918
|
this.offset = Vector.origin;
|
|
@@ -2833,12 +3120,7 @@
|
|
|
2833
3120
|
return overlaps;
|
|
2834
3121
|
}
|
|
2835
3122
|
calculateVelocity() {
|
|
2836
|
-
const baseVelocity = getParticleBaseVelocity(this.direction)
|
|
2837
|
-
const res = baseVelocity.copy();
|
|
2838
|
-
const moveOptions = this.options.move;
|
|
2839
|
-
const rad = Math.PI / 180 * moveOptions.angle.value;
|
|
2840
|
-
const radOffset = Math.PI / 180 * moveOptions.angle.offset;
|
|
2841
|
-
const range = {
|
|
3123
|
+
const baseVelocity = getParticleBaseVelocity(this.direction), res = baseVelocity.copy(), moveOptions = this.options.move, rad = Math.PI / 180 * getRangeValue(moveOptions.angle.value), radOffset = Math.PI / 180 * getRangeValue(moveOptions.angle.offset), range = {
|
|
2842
3124
|
left: radOffset - rad / 2,
|
|
2843
3125
|
right: radOffset + rad / 2
|
|
2844
3126
|
};
|
|
@@ -2988,10 +3270,11 @@
|
|
|
2988
3270
|
}
|
|
2989
3271
|
for (const particle of this.array) {
|
|
2990
3272
|
const resizeFactor = container.canvas.resizeFactor;
|
|
2991
|
-
if (resizeFactor) {
|
|
3273
|
+
if (resizeFactor && !particle.ignoresResizeRatio) {
|
|
2992
3274
|
particle.position.x *= resizeFactor.width;
|
|
2993
3275
|
particle.position.y *= resizeFactor.height;
|
|
2994
3276
|
}
|
|
3277
|
+
particle.ignoresResizeRatio = false;
|
|
2995
3278
|
particle.bubble.inRange = false;
|
|
2996
3279
|
for (const [, plugin] of this.container.plugins) {
|
|
2997
3280
|
if (particle.destroyed) {
|
|
@@ -3227,13 +3510,13 @@
|
|
|
3227
3510
|
container.canvas.size.height = element.offsetHeight * ratio;
|
|
3228
3511
|
}
|
|
3229
3512
|
const particles = options.particles;
|
|
3230
|
-
this.attractDistance = particles.move.attract.distance * ratio;
|
|
3513
|
+
this.attractDistance = getRangeValue(particles.move.attract.distance) * ratio;
|
|
3231
3514
|
this.linksDistance = particles.links.distance * ratio;
|
|
3232
3515
|
this.linksWidth = particles.links.width * ratio;
|
|
3233
|
-
this.sizeAnimationSpeed = particles.size.animation.speed * ratio;
|
|
3234
|
-
this.maxSpeed = particles.move.gravity.maxSpeed * ratio;
|
|
3516
|
+
this.sizeAnimationSpeed = getRangeValue(particles.size.animation.speed) * ratio;
|
|
3517
|
+
this.maxSpeed = getRangeValue(particles.move.gravity.maxSpeed) * ratio;
|
|
3235
3518
|
if (particles.orbit.radius !== undefined) {
|
|
3236
|
-
this.orbitRadius = particles.orbit.radius * this.container.retina.pixelRatio;
|
|
3519
|
+
this.orbitRadius = getRangeValue(particles.orbit.radius) * this.container.retina.pixelRatio;
|
|
3237
3520
|
}
|
|
3238
3521
|
const modes = options.interactivity.modes;
|
|
3239
3522
|
this.connectModeDistance = modes.connect.distance * ratio;
|
|
@@ -3253,19 +3536,19 @@
|
|
|
3253
3536
|
const ratio = this.pixelRatio;
|
|
3254
3537
|
const moveDistance = options.move.distance;
|
|
3255
3538
|
const props = particle.retina;
|
|
3256
|
-
props.attractDistance = options.move.attract.distance * ratio;
|
|
3539
|
+
props.attractDistance = getRangeValue(options.move.attract.distance) * ratio;
|
|
3257
3540
|
props.linksDistance = options.links.distance * ratio;
|
|
3258
3541
|
props.linksWidth = options.links.width * ratio;
|
|
3259
3542
|
props.moveDrift = getRangeValue(options.move.drift) * ratio;
|
|
3260
3543
|
props.moveSpeed = getRangeValue(options.move.speed) * ratio;
|
|
3261
|
-
props.sizeAnimationSpeed = options.size.animation.speed * ratio;
|
|
3544
|
+
props.sizeAnimationSpeed = getRangeValue(options.size.animation.speed) * ratio;
|
|
3262
3545
|
if (particle.spin) {
|
|
3263
3546
|
props.spinAcceleration = getRangeValue(options.move.spin.acceleration) * ratio;
|
|
3264
3547
|
}
|
|
3265
3548
|
const maxDistance = props.maxDistance;
|
|
3266
3549
|
maxDistance.horizontal = moveDistance.horizontal !== undefined ? moveDistance.horizontal * ratio : undefined;
|
|
3267
3550
|
maxDistance.vertical = moveDistance.vertical !== undefined ? moveDistance.vertical * ratio : undefined;
|
|
3268
|
-
props.maxSpeed = options.move.gravity.maxSpeed * ratio;
|
|
3551
|
+
props.maxSpeed = getRangeValue(options.move.gravity.maxSpeed) * ratio;
|
|
3269
3552
|
}
|
|
3270
3553
|
handleMotionChange(mediaQuery) {
|
|
3271
3554
|
const options = this.container.actualOptions;
|
|
@@ -4597,7 +4880,7 @@
|
|
|
4597
4880
|
function setColorAnimation(colorValue, colorAnimation, reduceFactor) {
|
|
4598
4881
|
colorValue.enable = colorAnimation.enable;
|
|
4599
4882
|
if (colorValue.enable) {
|
|
4600
|
-
colorValue.velocity = colorAnimation.speed / 100 * reduceFactor;
|
|
4883
|
+
colorValue.velocity = getRangeValue(colorAnimation.speed) / 100 * reduceFactor;
|
|
4601
4884
|
if (colorAnimation.sync) {
|
|
4602
4885
|
return;
|
|
4603
4886
|
}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
/*! tsParticles v1.
|
|
1
|
+
/*! tsParticles v1.42.0 by Matteo Bruni */
|
|
2
2
|
!function(e,n){if("object"==typeof exports&&"object"==typeof module)module.exports=n();else if("function"==typeof define&&define.amd)define([],n);else{var t=n();for(var o in t)("object"==typeof exports?exports:e)[o]=t[o]}}(window,(function(){return function(){"use strict";var e={d:function(n,t){for(var o in t)e.o(t,o)&&!e.o(n,o)&&Object.defineProperty(n,o,{enumerable:!0,get:t[o]})},o:function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},r:function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},n={};e.r(n),e.d(n,{loadLifeUpdater:function(){return l}});class t{}t.generatedAttribute="generated",t.randomColorValue="random",t.midColorValue="mid",t.touchEndEvent="touchend",t.mouseDownEvent="mousedown",t.mouseUpEvent="mouseup",t.mouseMoveEvent="mousemove",t.touchStartEvent="touchstart",t.touchMoveEvent="touchmove",t.mouseLeaveEvent="mouseleave",t.mouseOutEvent="mouseout",t.touchCancelEvent="touchcancel",t.resizeEvent="resize",t.visibilityChangeEvent="visibilitychange",t.noPolygonDataLoaded="No polygon data loaded.",t.noPolygonFound="No polygon found, you need to specify SVG url in config.";new WeakMap;new WeakMap;new WeakMap,new WeakSet;new WeakMap;new WeakMap;new WeakMap;function o(e){const n=r(e);let t=a(e);return n===t&&(t=0),Math.random()*(n-t)+t}function i(e){return"number"==typeof e?e:o(e)}function a(e){return"number"==typeof e?e:e.min}function r(e){return"number"==typeof e?e:e.max}function u(e,n){if(e===n||void 0===n&&"number"==typeof e)return e;const t=a(e),o=r(e);return void 0!==n?{min:Math.min(t,n),max:Math.max(o,n)}:u(t,o)}new WeakMap;class d{constructor(e){this.container=e}init(){}isEnabled(e){return!e.destroyed}update(e,n){if(!this.isEnabled(e))return;const t=e.life;let a=!1;if(e.spawning){if(t.delayTime+=n.value,!(t.delayTime>=e.life.delay))return;a=!0,e.spawning=!1,t.delayTime=0,t.time=0}if(-1===t.duration)return;if(e.spawning)return;if(a?t.time=0:t.time+=n.value,t.time<t.duration)return;if(t.time=0,e.life.count>0&&e.life.count--,0===e.life.count)return void e.destroy();const r=this.container.canvas.size,d=u(0,r.width),l=u(0,r.width);e.position.x=o(d),e.position.y=o(l),e.spawning=!0,t.delayTime=0,t.time=0,e.reset();const c=e.options.life;t.delay=1e3*i(c.delay.value),t.duration=1e3*i(c.duration.value)}}async function l(e){await e.addParticleUpdater("life",(e=>new d(e)))}return n}()}));
|