codepens/pixi-sprite-bubbles/dist/742d19fae30395a25522f43c1.js

60 lines
1.4 KiB
JavaScript

var Vector = function(_x, _y) {
this.x = _x || 1;
this.y = _y || 0;
this.setAngle = function(angle) {
var length = this.getLength();
this.x = Math.cos(angle) * length;
this.y = Math.sin(angle) * length;
}
this.getAngle = function() {
return Math.atan2(this.y, this.x);
}
this.setLength = function(length) {
var angle = this.getAngle();
this.x = Math.cos(angle) * length;
this.y = Math.sin(angle) * length;
}
this.getLength = function() {
return Math.sqrt(this.x * this.x + this.y * this.y);
}
this.add = function(v2) {
return {
x: this.x + v2.x,
y: this.y + v2.y
};
}
this.sub = function(v2) {
return {
x: this.x - v2.x,
y: this.y - v2.y
};
}
this.mult = function(val) {
return {
x: this.x * val,
y: this.y * val
};
}
this.divide = function(val) {
return {
x: this.x / val,
y: this.y / val
};
}
this.addTo = function(v2) {
this.x += v2.x;
this.y += v2.y;
}
this.subtractFrom = function(v2) {
this.x -= v2.x;
this.y -= v2.y;
}
this.multiplyBy = function(val) {
this.x *= val;
this.y *= val;
}
this.divideBy = function(val) {
this.x /= val;
this.y /= val;
}
};