all files / src/particle/ ForceField.js

40% Statements 2/5
0% Branches 0/2
0% Functions 0/2
40% Lines 2/5
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23                                         
import Field from './Field';
import Vector3 from '../math/Vector3';
import glMatrix from '../dep/glmatrix';
var vec3 =  glMatrix.vec3;
 
/**
 * @constructor clay.particle.ForceField
 * @extends clay.particle.Field
 */
var ForceField = Field.extend(function() {
    return {
        force: new Vector3()
    };
}, {
    applyTo: function(velocity, position, weight, deltaTime) {
        if (weight > 0) {
            vec3.scaleAndAdd(velocity.array, velocity.array, this.force.array, deltaTime / weight);
        }
    }
});
 
export default ForceField;