module.exports = class Vector3 { /** * A 3D vector * * @param {number} x The X value of this vector * @param {number} y The Y value of this vector * @param {number} z The Z value of this vector */ constructor(x, y, z) { this.x = x; this.y = y; this.z = z; } /** * Add another vector to this one * * @param {Vector3} operand The vector to add to this one * @returns {void} */ add(operand) { this.x += operand.x; this.y += operand.y; this.z += operand.z; } /** * Flip the sign of all properties of the vector * * @returns {void} */ negate() { this.x = -this.x; this.y = -this.y; this.z = -this.z; } };