@math.gl/core 4.0.0-alpha.4 → 4.0.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.
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/gl-matrix/vec2.js"],"names":["glMatrix","create","out","ARRAY_TYPE","Float32Array","clone","a","fromValues","x","y","copy","set","add","b","subtract","multiply","divide","ceil","Math","floor","min","max","round","scale","scaleAndAdd","distance","sqrt","squaredDistance","length","squaredLength","negate","inverse","normalize","len","dot","cross","z","lerp","t","ax","ay","random","undefined","r","RANDOM","PI","cos","sin","transformMat2","m","transformMat2d","transformMat3","transformMat4","rotate","rad","p0","p1","sinC","cosC","angle","x1","y1","x2","y2","mag","cosine","acos","zero","str","exactEquals","equals","a0","a1","b0","b1","abs","EPSILON","sub","mul","div","dist","sqrDist","sqrLen","forEach","vec","stride","offset","count","fn","arg","i","l"],"mappings":"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","sourcesContent":["// @eslint-disable\n// @ts-nocheck\n\nimport * as glMatrix from './common.js';\n\n/**\n * 2 Dimensional Vector\n * @module vec2\n */\n\n/**\n * Creates a new, empty vec2\n *\n * @returns {vec2} a new 2D vector\n */\nexport function create() {\n const out = new glMatrix.ARRAY_TYPE(2);\n if (glMatrix.ARRAY_TYPE != Float32Array) {\n out[0] = 0;\n out[1] = 0;\n }\n return out;\n}\n\n/**\n * Creates a new vec2 initialized with values from an existing vector\n *\n * @param {ReadonlyVec2} a vector to clone\n * @returns {vec2} a new 2D vector\n */\nexport function clone(a) {\n const out = new glMatrix.ARRAY_TYPE(2);\n out[0] = a[0];\n out[1] = a[1];\n return out;\n}\n\n/**\n * Creates a new vec2 initialized with the given values\n *\n * @param {Number} x X component\n * @param {Number} y Y component\n * @returns {vec2} a new 2D vector\n */\nexport function fromValues(x, y) {\n const out = new glMatrix.ARRAY_TYPE(2);\n out[0] = x;\n out[1] = y;\n return out;\n}\n\n/**\n * Copy the values from one vec2 to another\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the source vector\n * @returns {vec2} out\n */\nexport function copy(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n return out;\n}\n\n/**\n * Set the components of a vec2 to the given values\n *\n * @param {vec2} out the receiving vector\n * @param {Number} x X component\n * @param {Number} y Y component\n * @returns {vec2} out\n */\nexport function set(out, x, y) {\n out[0] = x;\n out[1] = y;\n return out;\n}\n\n/**\n * Adds two vec2's\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @returns {vec2} out\n */\nexport function add(out, a, b) {\n out[0] = a[0] + b[0];\n out[1] = a[1] + b[1];\n return out;\n}\n\n/**\n * Subtracts vector b from vector a\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @returns {vec2} out\n */\nexport function subtract(out, a, b) {\n out[0] = a[0] - b[0];\n out[1] = a[1] - b[1];\n return out;\n}\n\n/**\n * Multiplies two vec2's\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @returns {vec2} out\n */\nexport function multiply(out, a, b) {\n out[0] = a[0] * b[0];\n out[1] = a[1] * b[1];\n return out;\n}\n\n/**\n * Divides two vec2's\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @returns {vec2} out\n */\nexport function divide(out, a, b) {\n out[0] = a[0] / b[0];\n out[1] = a[1] / b[1];\n return out;\n}\n\n/**\n * Math.ceil the components of a vec2\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a vector to ceil\n * @returns {vec2} out\n */\nexport function ceil(out, a) {\n out[0] = Math.ceil(a[0]);\n out[1] = Math.ceil(a[1]);\n return out;\n}\n\n/**\n * Math.floor the components of a vec2\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a vector to floor\n * @returns {vec2} out\n */\nexport function floor(out, a) {\n out[0] = Math.floor(a[0]);\n out[1] = Math.floor(a[1]);\n return out;\n}\n\n/**\n * Returns the minimum of two vec2's\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @returns {vec2} out\n */\nexport function min(out, a, b) {\n out[0] = Math.min(a[0], b[0]);\n out[1] = Math.min(a[1], b[1]);\n return out;\n}\n\n/**\n * Returns the maximum of two vec2's\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @returns {vec2} out\n */\nexport function max(out, a, b) {\n out[0] = Math.max(a[0], b[0]);\n out[1] = Math.max(a[1], b[1]);\n return out;\n}\n\n/**\n * symmetric round the components of a vec2\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a vector to round\n * @returns {vec2} out\n */\nexport function round(out, a) {\n out[0] = glMatrix.round(a[0]);\n out[1] = glMatrix.round(a[1]);\n return out;\n}\n\n/**\n * Scales a vec2 by a scalar number\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the vector to scale\n * @param {Number} b amount to scale the vector by\n * @returns {vec2} out\n */\nexport function scale(out, a, b) {\n out[0] = a[0] * b;\n out[1] = a[1] * b;\n return out;\n}\n\n/**\n * Adds two vec2's after scaling the second operand by a scalar value\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @param {Number} scale the amount to scale b by before adding\n * @returns {vec2} out\n */\nexport function scaleAndAdd(out, a, b, scale) {\n out[0] = a[0] + b[0] * scale;\n out[1] = a[1] + b[1] * scale;\n return out;\n}\n\n/**\n * Calculates the euclidian distance between two vec2's\n *\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @returns {Number} distance between a and b\n */\nexport function distance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n return Math.sqrt(x * x + y * y);\n}\n\n/**\n * Calculates the squared euclidian distance between two vec2's\n *\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @returns {Number} squared distance between a and b\n */\nexport function squaredDistance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n return x * x + y * y;\n}\n\n/**\n * Calculates the length of a vec2\n *\n * @param {ReadonlyVec2} a vector to calculate length of\n * @returns {Number} length of a\n */\nexport function length(a) {\n const x = a[0];\n const y = a[1];\n return Math.sqrt(x * x + y * y);\n}\n\n/**\n * Calculates the squared length of a vec2\n *\n * @param {ReadonlyVec2} a vector to calculate squared length of\n * @returns {Number} squared length of a\n */\nexport function squaredLength(a) {\n const x = a[0];\n const y = a[1];\n return x * x + y * y;\n}\n\n/**\n * Negates the components of a vec2\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a vector to negate\n * @returns {vec2} out\n */\nexport function negate(out, a) {\n out[0] = -a[0];\n out[1] = -a[1];\n return out;\n}\n\n/**\n * Returns the inverse of the components of a vec2\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a vector to invert\n * @returns {vec2} out\n */\nexport function inverse(out, a) {\n out[0] = 1.0 / a[0];\n out[1] = 1.0 / a[1];\n return out;\n}\n\n/**\n * Normalize a vec2\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a vector to normalize\n * @returns {vec2} out\n */\nexport function normalize(out, a) {\n const x = a[0];\n const y = a[1];\n let len = x * x + y * y;\n if (len > 0) {\n // TODO: evaluate use of glm_invsqrt here?\n len = 1 / Math.sqrt(len);\n }\n out[0] = a[0] * len;\n out[1] = a[1] * len;\n return out;\n}\n\n/**\n * Calculates the dot product of two vec2's\n *\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @returns {Number} dot product of a and b\n */\nexport function dot(a, b) {\n return a[0] * b[0] + a[1] * b[1];\n}\n\n/**\n * Computes the cross product of two vec2's\n * Note that the cross product must by definition produce a 3D vector\n *\n * @param {vec3} out the receiving vector\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @returns {vec3} out\n */\nexport function cross(out, a, b) {\n const z = a[0] * b[1] - a[1] * b[0];\n out[0] = out[1] = 0;\n out[2] = z;\n return out;\n}\n\n/**\n * Performs a linear interpolation between two vec2's\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the first operand\n * @param {ReadonlyVec2} b the second operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {vec2} out\n */\nexport function lerp(out, a, b, t) {\n const ax = a[0];\n const ay = a[1];\n out[0] = ax + t * (b[0] - ax);\n out[1] = ay + t * (b[1] - ay);\n return out;\n}\n\n/**\n * Generates a random vector with the given scale\n *\n * @param {vec2} out the receiving vector\n * @param {Number} [scale] Length of the resulting vector. If omitted, a unit vector will be returned\n * @returns {vec2} out\n */\nexport function random(out, scale) {\n scale = scale === undefined ? 1.0 : scale;\n const r = glMatrix.RANDOM() * 2.0 * Math.PI;\n out[0] = Math.cos(r) * scale;\n out[1] = Math.sin(r) * scale;\n return out;\n}\n\n/**\n * Transforms the vec2 with a mat2\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the vector to transform\n * @param {ReadonlyMat2} m matrix to transform with\n * @returns {vec2} out\n */\nexport function transformMat2(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y;\n out[1] = m[1] * x + m[3] * y;\n return out;\n}\n\n/**\n * Transforms the vec2 with a mat2d\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the vector to transform\n * @param {ReadonlyMat2d} m matrix to transform with\n * @returns {vec2} out\n */\nexport function transformMat2d(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y + m[4];\n out[1] = m[1] * x + m[3] * y + m[5];\n return out;\n}\n\n/**\n * Transforms the vec2 with a mat3\n * 3rd vector component is implicitly '1'\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the vector to transform\n * @param {ReadonlyMat3} m matrix to transform with\n * @returns {vec2} out\n */\nexport function transformMat3(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[3] * y + m[6];\n out[1] = m[1] * x + m[4] * y + m[7];\n return out;\n}\n\n/**\n * Transforms the vec2 with a mat4\n * 3rd vector component is implicitly '0'\n * 4th vector component is implicitly '1'\n *\n * @param {vec2} out the receiving vector\n * @param {ReadonlyVec2} a the vector to transform\n * @param {ReadonlyMat4} m matrix to transform with\n * @returns {vec2} out\n */\nexport function transformMat4(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[4] * y + m[12];\n out[1] = m[1] * x + m[5] * y + m[13];\n return out;\n}\n\n/**\n * Rotate a 2D vector\n * @param {vec2} out The receiving vec2\n * @param {ReadonlyVec2} a The vec2 point to rotate\n * @param {ReadonlyVec2} b The origin of the rotation\n * @param {Number} rad The angle of rotation in radians\n * @returns {vec2} out\n */\nexport function rotate(out, a, b, rad) {\n // Translate point to the origin\n const p0 = a[0] - b[0];\n const p1 = a[1] - b[1];\n const sinC = Math.sin(rad);\n const cosC = Math.cos(rad);\n\n // perform rotation and translate to correct position\n out[0] = p0 * cosC - p1 * sinC + b[0];\n out[1] = p0 * sinC + p1 * cosC + b[1];\n\n return out;\n}\n\n/**\n * Get the angle between two 2D vectors\n * @param {ReadonlyVec2} a The first operand\n * @param {ReadonlyVec2} b The second operand\n * @returns {Number} The angle in radians\n */\nexport function angle(a, b) {\n const x1 = a[0];\n const y1 = a[1];\n const x2 = b[0];\n const y2 = b[1];\n // mag is the product of the magnitudes of a and b\n const mag = Math.sqrt((x1 * x1 + y1 * y1) * (x2 * x2 + y2 * y2));\n // mag &&.. short circuits if mag == 0\n const cosine = mag && (x1 * x2 + y1 * y2) / mag;\n // Math.min(Math.max(cosine, -1), 1) clamps the cosine between -1 and 1\n return Math.acos(Math.min(Math.max(cosine, -1), 1));\n}\n\n/**\n * Set the components of a vec2 to zero\n *\n * @param {vec2} out the receiving vector\n * @returns {vec2} out\n */\nexport function zero(out) {\n out[0] = 0.0;\n out[1] = 0.0;\n return out;\n}\n\n/**\n * Returns a string representation of a vector\n *\n * @param {ReadonlyVec2} a vector to represent as a string\n * @returns {String} string representation of the vector\n */\nexport function str(a) {\n return `vec2(${a[0]}, ${a[1]})`;\n}\n\n/**\n * Returns whether or not the vectors exactly have the same elements in the same position (when compared with ===)\n *\n * @param {ReadonlyVec2} a The first vector.\n * @param {ReadonlyVec2} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function exactEquals(a, b) {\n return a[0] === b[0] && a[1] === b[1];\n}\n\n/**\n * Returns whether or not the vectors have approximately the same elements in the same position.\n *\n * @param {ReadonlyVec2} a The first vector.\n * @param {ReadonlyVec2} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function equals(a, b) {\n const a0 = a[0];\n const a1 = a[1];\n const b0 = b[0];\n const b1 = b[1];\n return (\n Math.abs(a0 - b0) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a0), Math.abs(b0)) &&\n Math.abs(a1 - b1) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a1), Math.abs(b1))\n );\n}\n\n/**\n * Alias for {@link vec2.length}\n * @function\n */\nexport const len = length;\n\n/**\n * Alias for {@link vec2.subtract}\n * @function\n */\nexport const sub = subtract;\n\n/**\n * Alias for {@link vec2.multiply}\n * @function\n */\nexport const mul = multiply;\n\n/**\n * Alias for {@link vec2.divide}\n * @function\n */\nexport const div = divide;\n\n/**\n * Alias for {@link vec2.distance}\n * @function\n */\nexport const dist = distance;\n\n/**\n * Alias for {@link vec2.squaredDistance}\n * @function\n */\nexport const sqrDist = squaredDistance;\n\n/**\n * Alias for {@link vec2.squaredLength}\n * @function\n */\nexport const sqrLen = squaredLength;\n\n/**\n * Perform some operation over an array of vec2s.\n *\n * @param {Array} a the array of vectors to iterate over\n * @param {Number} stride Number of elements between the start of each vec2. If 0 assumes tightly packed\n * @param {Number} offset Number of elements to skip at the beginning of the array\n * @param {Number} count Number of vec2s to iterate over. If 0 iterates over entire array\n * @param {Function} fn Function to call for each vector in the array\n * @param {Object} [arg] additional argument to pass to fn\n * @returns {Array} a\n * @function\n */\nexport const forEach = (function () {\n const vec = create();\n\n return function (a, stride, offset, count, fn, arg) {\n let i;\n let l;\n if (!stride) {\n stride = 2;\n }\n\n if (!offset) {\n offset = 0;\n }\n\n if (count) {\n l = Math.min(count * stride + offset, a.length);\n } else {\n l = a.length;\n }\n\n for (i = offset; i < l; i += stride) {\n vec[0] = a[i];\n vec[1] = a[i + 1];\n fn(vec, vec, arg);\n a[i] = vec[0];\n a[i + 1] = vec[1];\n }\n\n return a;\n };\n})();\n"],"file":"vec2.js"}
1
+ {"version":3,"sources":["../../src/gl-matrix/vec2.ts"],"names":["glMatrix","create","out","ARRAY_TYPE","Float32Array","clone","a","fromValues","x","y","copy","set","add","b","subtract","multiply","divide","ceil","Math","floor","min","max","round","scale","scaleAndAdd","distance","sqrt","squaredDistance","length","squaredLength","negate","inverse","normalize","len","dot","cross","z","lerp","t","ax","ay","random","undefined","r","RANDOM","PI","cos","sin","transformMat2","m","transformMat2d","transformMat3","transformMat4","rotate","rad","p0","p1","sinC","cosC","angle","x1","y1","x2","y2","mag","cosine","acos","zero","str","exactEquals","equals","a0","a1","b0","b1","abs","EPSILON","sub","mul","div","dist","sqrDist","sqrLen","forEach","vec","stride","offset","count","fn","arg","i","l"],"mappings":"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","sourcesContent":["// @eslint-disable\n// @ts-nocheck\n\nimport type {NumericArray} from '@math.gl/types';\nimport * as glMatrix from './common.js';\n\n/**\n * 2 Dimensional Vector\n * @module vec2\n */\n\n/**\n * Creates a new, empty vec2\n *\n * @returns {NumericArray} a new 2D vector\n */\nexport function create() {\n const out = new glMatrix.ARRAY_TYPE(2);\n if (glMatrix.ARRAY_TYPE != Float32Array) {\n out[0] = 0;\n out[1] = 0;\n }\n return out;\n}\n\n/**\n * Creates a new vec2 initialized with values from an existing vector\n *\n * @param {Readonly<NumericArray>} a vector to clone\n * @returns {NumericArray} a new 2D vector\n */\nexport function clone(a) {\n const out = new glMatrix.ARRAY_TYPE(2);\n out[0] = a[0];\n out[1] = a[1];\n return out;\n}\n\n/**\n * Creates a new vec2 initialized with the given values\n *\n * @param {Number} x X component\n * @param {Number} y Y component\n * @returns {NumericArray} a new 2D vector\n */\nexport function fromValues(x, y) {\n const out = new glMatrix.ARRAY_TYPE(2);\n out[0] = x;\n out[1] = y;\n return out;\n}\n\n/**\n * Copy the values from one vec2 to another\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the source vector\n * @returns {NumericArray} out\n */\nexport function copy(out, a) {\n out[0] = a[0];\n out[1] = a[1];\n return out;\n}\n\n/**\n * Set the components of a vec2 to the given values\n *\n * @param {NumericArray} out the receiving vector\n * @param {Number} x X component\n * @param {Number} y Y component\n * @returns {NumericArray} out\n */\nexport function set(out, x, y) {\n out[0] = x;\n out[1] = y;\n return out;\n}\n\n/**\n * Adds two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @returns {NumericArray} out\n */\nexport function add(out, a, b) {\n out[0] = a[0] + b[0];\n out[1] = a[1] + b[1];\n return out;\n}\n\n/**\n * Subtracts vector b from vector a\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @returns {NumericArray} out\n */\nexport function subtract(out, a, b) {\n out[0] = a[0] - b[0];\n out[1] = a[1] - b[1];\n return out;\n}\n\n/**\n * Multiplies two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @returns {NumericArray} out\n */\nexport function multiply(out, a, b) {\n out[0] = a[0] * b[0];\n out[1] = a[1] * b[1];\n return out;\n}\n\n/**\n * Divides two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @returns {NumericArray} out\n */\nexport function divide(out, a, b) {\n out[0] = a[0] / b[0];\n out[1] = a[1] / b[1];\n return out;\n}\n\n/**\n * Math.ceil the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a vector to ceil\n * @returns {NumericArray} out\n */\nexport function ceil(out, a) {\n out[0] = Math.ceil(a[0]);\n out[1] = Math.ceil(a[1]);\n return out;\n}\n\n/**\n * Math.floor the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a vector to floor\n * @returns {NumericArray} out\n */\nexport function floor(out, a) {\n out[0] = Math.floor(a[0]);\n out[1] = Math.floor(a[1]);\n return out;\n}\n\n/**\n * Returns the minimum of two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @returns {NumericArray} out\n */\nexport function min(out, a, b) {\n out[0] = Math.min(a[0], b[0]);\n out[1] = Math.min(a[1], b[1]);\n return out;\n}\n\n/**\n * Returns the maximum of two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @returns {NumericArray} out\n */\nexport function max(out, a, b) {\n out[0] = Math.max(a[0], b[0]);\n out[1] = Math.max(a[1], b[1]);\n return out;\n}\n\n/**\n * symmetric round the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a vector to round\n * @returns {NumericArray} out\n */\nexport function round(out, a) {\n out[0] = glMatrix.round(a[0]);\n out[1] = glMatrix.round(a[1]);\n return out;\n}\n\n/**\n * Scales a vec2 by a scalar number\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the vector to scale\n * @param {Number} b amount to scale the vector by\n * @returns {NumericArray} out\n */\nexport function scale(out, a, b) {\n out[0] = a[0] * b;\n out[1] = a[1] * b;\n return out;\n}\n\n/**\n * Adds two vec2's after scaling the second operand by a scalar value\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @param {Number} scale the amount to scale b by before adding\n * @returns {NumericArray} out\n */\nexport function scaleAndAdd(out, a, b, scale) {\n out[0] = a[0] + b[0] * scale;\n out[1] = a[1] + b[1] * scale;\n return out;\n}\n\n/**\n * Calculates the euclidian distance between two vec2's\n *\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @returns {Number} distance between a and b\n */\nexport function distance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n return Math.sqrt(x * x + y * y);\n}\n\n/**\n * Calculates the squared euclidian distance between two vec2's\n *\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @returns {Number} squared distance between a and b\n */\nexport function squaredDistance(a, b) {\n const x = b[0] - a[0];\n const y = b[1] - a[1];\n return x * x + y * y;\n}\n\n/**\n * Calculates the length of a vec2\n *\n * @param {Readonly<NumericArray>} a vector to calculate length of\n * @returns {Number} length of a\n */\nexport function length(a) {\n const x = a[0];\n const y = a[1];\n return Math.sqrt(x * x + y * y);\n}\n\n/**\n * Calculates the squared length of a vec2\n *\n * @param {Readonly<NumericArray>} a vector to calculate squared length of\n * @returns {Number} squared length of a\n */\nexport function squaredLength(a) {\n const x = a[0];\n const y = a[1];\n return x * x + y * y;\n}\n\n/**\n * Negates the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a vector to negate\n * @returns {NumericArray} out\n */\nexport function negate(out, a) {\n out[0] = -a[0];\n out[1] = -a[1];\n return out;\n}\n\n/**\n * Returns the inverse of the components of a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a vector to invert\n * @returns {NumericArray} out\n */\nexport function inverse(out, a) {\n out[0] = 1.0 / a[0];\n out[1] = 1.0 / a[1];\n return out;\n}\n\n/**\n * Normalize a vec2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a vector to normalize\n * @returns {NumericArray} out\n */\nexport function normalize(out, a) {\n const x = a[0];\n const y = a[1];\n let len = x * x + y * y;\n if (len > 0) {\n // TODO: evaluate use of glm_invsqrt here?\n len = 1 / Math.sqrt(len);\n }\n out[0] = a[0] * len;\n out[1] = a[1] * len;\n return out;\n}\n\n/**\n * Calculates the dot product of two vec2's\n *\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @returns {Number} dot product of a and b\n */\nexport function dot(a, b) {\n return a[0] * b[0] + a[1] * b[1];\n}\n\n/**\n * Computes the cross product of two vec2's\n * Note that the cross product must by definition produce a 3D vector\n *\n * @param {vec3} out the receiving vector\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @returns {vec3} out\n */\nexport function cross(out, a, b) {\n const z = a[0] * b[1] - a[1] * b[0];\n out[0] = out[1] = 0;\n out[2] = z;\n return out;\n}\n\n/**\n * Performs a linear interpolation between two vec2's\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the first operand\n * @param {Readonly<NumericArray>} b the second operand\n * @param {Number} t interpolation amount, in the range [0-1], between the two inputs\n * @returns {NumericArray} out\n */\nexport function lerp(out, a, b, t) {\n const ax = a[0];\n const ay = a[1];\n out[0] = ax + t * (b[0] - ax);\n out[1] = ay + t * (b[1] - ay);\n return out;\n}\n\n/**\n * Generates a random vector with the given scale\n *\n * @param {NumericArray} out the receiving vector\n * @param {Number} [scale] Length of the resulting vector. If omitted, a unit vector will be returned\n * @returns {NumericArray} out\n */\nexport function random(out, scale) {\n scale = scale === undefined ? 1.0 : scale;\n const r = glMatrix.RANDOM() * 2.0 * Math.PI;\n out[0] = Math.cos(r) * scale;\n out[1] = Math.sin(r) * scale;\n return out;\n}\n\n/**\n * Transforms the vec2 with a mat2\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the vector to transform\n * @param {ReadonlyMat2} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat2(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y;\n out[1] = m[1] * x + m[3] * y;\n return out;\n}\n\n/**\n * Transforms the vec2 with a mat2d\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the vector to transform\n * @param {ReadonlyMat2d} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat2d(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[2] * y + m[4];\n out[1] = m[1] * x + m[3] * y + m[5];\n return out;\n}\n\n/**\n * Transforms the vec2 with a mat3\n * 3rd vector component is implicitly '1'\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the vector to transform\n * @param {ReadonlyMat3} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat3(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[3] * y + m[6];\n out[1] = m[1] * x + m[4] * y + m[7];\n return out;\n}\n\n/**\n * Transforms the vec2 with a mat4\n * 3rd vector component is implicitly '0'\n * 4th vector component is implicitly '1'\n *\n * @param {NumericArray} out the receiving vector\n * @param {Readonly<NumericArray>} a the vector to transform\n * @param {ReadonlyMat4} m matrix to transform with\n * @returns {NumericArray} out\n */\nexport function transformMat4(out, a, m) {\n const x = a[0];\n const y = a[1];\n out[0] = m[0] * x + m[4] * y + m[12];\n out[1] = m[1] * x + m[5] * y + m[13];\n return out;\n}\n\n/**\n * Rotate a 2D vector\n * @param {NumericArray} out The receiving vec2\n * @param {Readonly<NumericArray>} a The vec2 point to rotate\n * @param {Readonly<NumericArray>} b The origin of the rotation\n * @param {Number} rad The angle of rotation in radians\n * @returns {NumericArray} out\n */\nexport function rotate(out, a, b, rad) {\n // Translate point to the origin\n const p0 = a[0] - b[0];\n const p1 = a[1] - b[1];\n const sinC = Math.sin(rad);\n const cosC = Math.cos(rad);\n\n // perform rotation and translate to correct position\n out[0] = p0 * cosC - p1 * sinC + b[0];\n out[1] = p0 * sinC + p1 * cosC + b[1];\n\n return out;\n}\n\n/**\n * Get the angle between two 2D vectors\n * @param {Readonly<NumericArray>} a The first operand\n * @param {Readonly<NumericArray>} b The second operand\n * @returns {Number} The angle in radians\n */\nexport function angle(a, b) {\n const x1 = a[0];\n const y1 = a[1];\n const x2 = b[0];\n const y2 = b[1];\n // mag is the product of the magnitudes of a and b\n const mag = Math.sqrt((x1 * x1 + y1 * y1) * (x2 * x2 + y2 * y2));\n // mag &&.. short circuits if mag == 0\n const cosine = mag && (x1 * x2 + y1 * y2) / mag;\n // Math.min(Math.max(cosine, -1), 1) clamps the cosine between -1 and 1\n return Math.acos(Math.min(Math.max(cosine, -1), 1));\n}\n\n/**\n * Set the components of a vec2 to zero\n *\n * @param {NumericArray} out the receiving vector\n * @returns {NumericArray} out\n */\nexport function zero(out) {\n out[0] = 0.0;\n out[1] = 0.0;\n return out;\n}\n\n/**\n * Returns a string representation of a vector\n *\n * @param {Readonly<NumericArray>} a vector to represent as a string\n * @returns {String} string representation of the vector\n */\nexport function str(a) {\n return `vec2(${a[0]}, ${a[1]})`;\n}\n\n/**\n * Returns whether or not the vectors exactly have the same elements in the same position (when compared with ===)\n *\n * @param {Readonly<NumericArray>} a The first vector.\n * @param {Readonly<NumericArray>} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function exactEquals(a, b) {\n return a[0] === b[0] && a[1] === b[1];\n}\n\n/**\n * Returns whether or not the vectors have approximately the same elements in the same position.\n *\n * @param {Readonly<NumericArray>} a The first vector.\n * @param {Readonly<NumericArray>} b The second vector.\n * @returns {Boolean} True if the vectors are equal, false otherwise.\n */\nexport function equals(a, b) {\n const a0 = a[0];\n const a1 = a[1];\n const b0 = b[0];\n const b1 = b[1];\n return (\n Math.abs(a0 - b0) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a0), Math.abs(b0)) &&\n Math.abs(a1 - b1) <= glMatrix.EPSILON * Math.max(1.0, Math.abs(a1), Math.abs(b1))\n );\n}\n\n/**\n * Alias for {@link vec2.length}\n * @function\n */\nexport const len = length;\n\n/**\n * Alias for {@link vec2.subtract}\n * @function\n */\nexport const sub = subtract;\n\n/**\n * Alias for {@link vec2.multiply}\n * @function\n */\nexport const mul = multiply;\n\n/**\n * Alias for {@link vec2.divide}\n * @function\n */\nexport const div = divide;\n\n/**\n * Alias for {@link vec2.distance}\n * @function\n */\nexport const dist = distance;\n\n/**\n * Alias for {@link vec2.squaredDistance}\n * @function\n */\nexport const sqrDist = squaredDistance;\n\n/**\n * Alias for {@link vec2.squaredLength}\n * @function\n */\nexport const sqrLen = squaredLength;\n\n/**\n * Perform some operation over an array of vec2s.\n *\n * @param {Array} a the array of vectors to iterate over\n * @param {Number} stride Number of elements between the start of each vec2. If 0 assumes tightly packed\n * @param {Number} offset Number of elements to skip at the beginning of the array\n * @param {Number} count Number of vec2s to iterate over. If 0 iterates over entire array\n * @param {Function} fn Function to call for each vector in the array\n * @param {Object} [arg] additional argument to pass to fn\n * @returns {Array} a\n * @function\n */\nexport const forEach = (function () {\n const vec = create();\n\n return function (a, stride, offset, count, fn, arg) {\n let i;\n let l;\n if (!stride) {\n stride = 2;\n }\n\n if (!offset) {\n offset = 0;\n }\n\n if (count) {\n l = Math.min(count * stride + offset, a.length);\n } else {\n l = a.length;\n }\n\n for (i = offset; i < l; i += stride) {\n vec[0] = a[i];\n vec[1] = a[i + 1];\n fn(vec, vec, arg);\n a[i] = vec[0];\n a[i + 1] = vec[1];\n }\n\n return a;\n };\n})();\n"],"file":"vec2.js"}
@@ -7,21 +7,21 @@
7
7
  *
8
8
  * @returns {vec3} a new 3D vector
9
9
  */
10
- export function create(): vec3;
10
+ export declare function create(): any[] | Float32Array;
11
11
  /**
12
12
  * Creates a new vec3 initialized with values from an existing vector
13
13
  *
14
14
  * @param {ReadonlyVec3} a vector to clone
15
15
  * @returns {vec3} a new 3D vector
16
16
  */
17
- export function clone(a: ReadonlyVec3): vec3;
17
+ export declare function clone(a: any): any[] | Float32Array;
18
18
  /**
19
19
  * Calculates the length of a vec3
20
20
  *
21
21
  * @param {ReadonlyVec3} a vector to calculate length of
22
22
  * @returns {Number} length of a
23
23
  */
24
- export function length(a: ReadonlyVec3): number;
24
+ export declare function length(a: any): number;
25
25
  /**
26
26
  * Creates a new vec3 initialized with the given values
27
27
  *
@@ -30,7 +30,7 @@ export function length(a: ReadonlyVec3): number;
30
30
  * @param {Number} z Z component
31
31
  * @returns {vec3} a new 3D vector
32
32
  */
33
- export function fromValues(x: number, y: number, z: number): vec3;
33
+ export declare function fromValues(x: any, y: any, z: any): any[] | Float32Array;
34
34
  /**
35
35
  * Copy the values from one vec3 to another
36
36
  *
@@ -38,7 +38,7 @@ export function fromValues(x: number, y: number, z: number): vec3;
38
38
  * @param {ReadonlyVec3} a the source vector
39
39
  * @returns {vec3} out
40
40
  */
41
- export function copy(out: vec3, a: ReadonlyVec3): vec3;
41
+ export declare function copy(out: any, a: any): any;
42
42
  /**
43
43
  * Set the components of a vec3 to the given values
44
44
  *
@@ -48,7 +48,7 @@ export function copy(out: vec3, a: ReadonlyVec3): vec3;
48
48
  * @param {Number} z Z component
49
49
  * @returns {vec3} out
50
50
  */
51
- export function set(out: vec3, x: number, y: number, z: number): vec3;
51
+ export declare function set(out: any, x: any, y: any, z: any): any;
52
52
  /**
53
53
  * Adds two vec3's
54
54
  *
@@ -57,7 +57,7 @@ export function set(out: vec3, x: number, y: number, z: number): vec3;
57
57
  * @param {ReadonlyVec3} b the second operand
58
58
  * @returns {vec3} out
59
59
  */
60
- export function add(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
60
+ export declare function add(out: any, a: any, b: any): any;
61
61
  /**
62
62
  * Subtracts vector b from vector a
63
63
  *
@@ -66,7 +66,7 @@ export function add(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
66
66
  * @param {ReadonlyVec3} b the second operand
67
67
  * @returns {vec3} out
68
68
  */
69
- export function subtract(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
69
+ export declare function subtract(out: any, a: any, b: any): any;
70
70
  /**
71
71
  * Multiplies two vec3's
72
72
  *
@@ -75,7 +75,7 @@ export function subtract(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
75
75
  * @param {ReadonlyVec3} b the second operand
76
76
  * @returns {vec3} out
77
77
  */
78
- export function multiply(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
78
+ export declare function multiply(out: any, a: any, b: any): any;
79
79
  /**
80
80
  * Divides two vec3's
81
81
  *
@@ -84,7 +84,7 @@ export function multiply(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
84
84
  * @param {ReadonlyVec3} b the second operand
85
85
  * @returns {vec3} out
86
86
  */
87
- export function divide(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
87
+ export declare function divide(out: any, a: any, b: any): any;
88
88
  /**
89
89
  * Math.ceil the components of a vec3
90
90
  *
@@ -92,7 +92,7 @@ export function divide(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
92
92
  * @param {ReadonlyVec3} a vector to ceil
93
93
  * @returns {vec3} out
94
94
  */
95
- export function ceil(out: vec3, a: ReadonlyVec3): vec3;
95
+ export declare function ceil(out: any, a: any): any;
96
96
  /**
97
97
  * Math.floor the components of a vec3
98
98
  *
@@ -100,7 +100,7 @@ export function ceil(out: vec3, a: ReadonlyVec3): vec3;
100
100
  * @param {ReadonlyVec3} a vector to floor
101
101
  * @returns {vec3} out
102
102
  */
103
- export function floor(out: vec3, a: ReadonlyVec3): vec3;
103
+ export declare function floor(out: any, a: any): any;
104
104
  /**
105
105
  * Returns the minimum of two vec3's
106
106
  *
@@ -109,7 +109,7 @@ export function floor(out: vec3, a: ReadonlyVec3): vec3;
109
109
  * @param {ReadonlyVec3} b the second operand
110
110
  * @returns {vec3} out
111
111
  */
112
- export function min(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
112
+ export declare function min(out: any, a: any, b: any): any;
113
113
  /**
114
114
  * Returns the maximum of two vec3's
115
115
  *
@@ -118,7 +118,7 @@ export function min(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
118
118
  * @param {ReadonlyVec3} b the second operand
119
119
  * @returns {vec3} out
120
120
  */
121
- export function max(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
121
+ export declare function max(out: any, a: any, b: any): any;
122
122
  /**
123
123
  * symmetric round the components of a vec3
124
124
  *
@@ -126,7 +126,7 @@ export function max(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
126
126
  * @param {ReadonlyVec3} a vector to round
127
127
  * @returns {vec3} out
128
128
  */
129
- export function round(out: vec3, a: ReadonlyVec3): vec3;
129
+ export declare function round(out: any, a: any): any;
130
130
  /**
131
131
  * Scales a vec3 by a scalar number
132
132
  *
@@ -135,7 +135,7 @@ export function round(out: vec3, a: ReadonlyVec3): vec3;
135
135
  * @param {Number} b amount to scale the vector by
136
136
  * @returns {vec3} out
137
137
  */
138
- export function scale(out: vec3, a: ReadonlyVec3, b: number): vec3;
138
+ export declare function scale(out: any, a: any, b: any): any;
139
139
  /**
140
140
  * Adds two vec3's after scaling the second operand by a scalar value
141
141
  *
@@ -145,7 +145,7 @@ export function scale(out: vec3, a: ReadonlyVec3, b: number): vec3;
145
145
  * @param {Number} scale the amount to scale b by before adding
146
146
  * @returns {vec3} out
147
147
  */
148
- export function scaleAndAdd(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, scale: number): vec3;
148
+ export declare function scaleAndAdd(out: any, a: any, b: any, scale: any): any;
149
149
  /**
150
150
  * Calculates the euclidian distance between two vec3's
151
151
  *
@@ -153,7 +153,7 @@ export function scaleAndAdd(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, scale:
153
153
  * @param {ReadonlyVec3} b the second operand
154
154
  * @returns {Number} distance between a and b
155
155
  */
156
- export function distance(a: ReadonlyVec3, b: ReadonlyVec3): number;
156
+ export declare function distance(a: any, b: any): number;
157
157
  /**
158
158
  * Calculates the squared euclidian distance between two vec3's
159
159
  *
@@ -161,14 +161,14 @@ export function distance(a: ReadonlyVec3, b: ReadonlyVec3): number;
161
161
  * @param {ReadonlyVec3} b the second operand
162
162
  * @returns {Number} squared distance between a and b
163
163
  */
164
- export function squaredDistance(a: ReadonlyVec3, b: ReadonlyVec3): number;
164
+ export declare function squaredDistance(a: any, b: any): number;
165
165
  /**
166
166
  * Calculates the squared length of a vec3
167
167
  *
168
168
  * @param {ReadonlyVec3} a vector to calculate squared length of
169
169
  * @returns {Number} squared length of a
170
170
  */
171
- export function squaredLength(a: ReadonlyVec3): number;
171
+ export declare function squaredLength(a: any): number;
172
172
  /**
173
173
  * Negates the components of a vec3
174
174
  *
@@ -176,7 +176,7 @@ export function squaredLength(a: ReadonlyVec3): number;
176
176
  * @param {ReadonlyVec3} a vector to negate
177
177
  * @returns {vec3} out
178
178
  */
179
- export function negate(out: vec3, a: ReadonlyVec3): vec3;
179
+ export declare function negate(out: any, a: any): any;
180
180
  /**
181
181
  * Returns the inverse of the components of a vec3
182
182
  *
@@ -184,7 +184,7 @@ export function negate(out: vec3, a: ReadonlyVec3): vec3;
184
184
  * @param {ReadonlyVec3} a vector to invert
185
185
  * @returns {vec3} out
186
186
  */
187
- export function inverse(out: vec3, a: ReadonlyVec3): vec3;
187
+ export declare function inverse(out: any, a: any): any;
188
188
  /**
189
189
  * Normalize a vec3
190
190
  *
@@ -192,7 +192,7 @@ export function inverse(out: vec3, a: ReadonlyVec3): vec3;
192
192
  * @param {ReadonlyVec3} a vector to normalize
193
193
  * @returns {vec3} out
194
194
  */
195
- export function normalize(out: vec3, a: ReadonlyVec3): vec3;
195
+ export declare function normalize(out: any, a: any): any;
196
196
  /**
197
197
  * Calculates the dot product of two vec3's
198
198
  *
@@ -200,7 +200,7 @@ export function normalize(out: vec3, a: ReadonlyVec3): vec3;
200
200
  * @param {ReadonlyVec3} b the second operand
201
201
  * @returns {Number} dot product of a and b
202
202
  */
203
- export function dot(a: ReadonlyVec3, b: ReadonlyVec3): number;
203
+ export declare function dot(a: any, b: any): number;
204
204
  /**
205
205
  * Computes the cross product of two vec3's
206
206
  *
@@ -209,7 +209,7 @@ export function dot(a: ReadonlyVec3, b: ReadonlyVec3): number;
209
209
  * @param {ReadonlyVec3} b the second operand
210
210
  * @returns {vec3} out
211
211
  */
212
- export function cross(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
212
+ export declare function cross(out: any, a: any, b: any): any;
213
213
  /**
214
214
  * Performs a linear interpolation between two vec3's
215
215
  *
@@ -219,7 +219,7 @@ export function cross(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
219
219
  * @param {Number} t interpolation amount, in the range [0-1], between the two inputs
220
220
  * @returns {vec3} out
221
221
  */
222
- export function lerp(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, t: number): vec3;
222
+ export declare function lerp(out: any, a: any, b: any, t: any): any;
223
223
  /**
224
224
  * Performs a spherical linear interpolation between two vec3's
225
225
  *
@@ -229,7 +229,7 @@ export function lerp(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, t: number): ve
229
229
  * @param {Number} t interpolation amount, in the range [0-1], between the two inputs
230
230
  * @returns {vec3} out
231
231
  */
232
- export function slerp(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, t: number): vec3;
232
+ export declare function slerp(out: any, a: any, b: any, t: any): any;
233
233
  /**
234
234
  * Performs a hermite interpolation with two control points
235
235
  *
@@ -241,7 +241,7 @@ export function slerp(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, t: number): v
241
241
  * @param {Number} t interpolation amount, in the range [0-1], between the two inputs
242
242
  * @returns {vec3} out
243
243
  */
244
- export function hermite(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, c: ReadonlyVec3, d: ReadonlyVec3, t: number): vec3;
244
+ export declare function hermite(out: any, a: any, b: any, c: any, d: any, t: any): any;
245
245
  /**
246
246
  * Performs a bezier interpolation with two control points
247
247
  *
@@ -253,7 +253,7 @@ export function hermite(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, c: Readonly
253
253
  * @param {Number} t interpolation amount, in the range [0-1], between the two inputs
254
254
  * @returns {vec3} out
255
255
  */
256
- export function bezier(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, c: ReadonlyVec3, d: ReadonlyVec3, t: number): vec3;
256
+ export declare function bezier(out: any, a: any, b: any, c: any, d: any, t: any): any;
257
257
  /**
258
258
  * Generates a random vector with the given scale
259
259
  *
@@ -261,7 +261,7 @@ export function bezier(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, c: ReadonlyV
261
261
  * @param {Number} [scale] Length of the resulting vector. If omitted, a unit vector will be returned
262
262
  * @returns {vec3} out
263
263
  */
264
- export function random(out: vec3, scale?: number): vec3;
264
+ export declare function random(out: any, scale: any): any;
265
265
  /**
266
266
  * Transforms the vec3 with a mat4.
267
267
  * 4th vector component is implicitly '1'
@@ -271,7 +271,7 @@ export function random(out: vec3, scale?: number): vec3;
271
271
  * @param {ReadonlyMat4} m matrix to transform with
272
272
  * @returns {vec3} out
273
273
  */
274
- export function transformMat4(out: vec3, a: ReadonlyVec3, m: ReadonlyMat4): vec3;
274
+ export declare function transformMat4(out: any, a: any, m: any): any;
275
275
  /**
276
276
  * Transforms the vec3 with a mat3.
277
277
  *
@@ -280,7 +280,7 @@ export function transformMat4(out: vec3, a: ReadonlyVec3, m: ReadonlyMat4): vec3
280
280
  * @param {ReadonlyMat3} m the 3x3 matrix to transform with
281
281
  * @returns {vec3} out
282
282
  */
283
- export function transformMat3(out: vec3, a: ReadonlyVec3, m: ReadonlyMat3): vec3;
283
+ export declare function transformMat3(out: any, a: any, m: any): any;
284
284
  /**
285
285
  * Transforms the vec3 with a quat
286
286
  * Can also be used for dual quaternions. (Multiply it with the real part)
@@ -290,7 +290,7 @@ export function transformMat3(out: vec3, a: ReadonlyVec3, m: ReadonlyMat3): vec3
290
290
  * @param {ReadonlyQuat} q quaternion to transform with
291
291
  * @returns {vec3} out
292
292
  */
293
- export function transformQuat(out: vec3, a: ReadonlyVec3, q: ReadonlyQuat): vec3;
293
+ export declare function transformQuat(out: any, a: any, q: any): any;
294
294
  /**
295
295
  * Rotate a 3D vector around the x-axis
296
296
  * @param {vec3} out The receiving vec3
@@ -299,7 +299,7 @@ export function transformQuat(out: vec3, a: ReadonlyVec3, q: ReadonlyQuat): vec3
299
299
  * @param {Number} rad The angle of rotation in radians
300
300
  * @returns {vec3} out
301
301
  */
302
- export function rotateX(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, rad: number): vec3;
302
+ export declare function rotateX(out: any, a: any, b: any, rad: any): any;
303
303
  /**
304
304
  * Rotate a 3D vector around the y-axis
305
305
  * @param {vec3} out The receiving vec3
@@ -308,7 +308,7 @@ export function rotateX(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, rad: number
308
308
  * @param {Number} rad The angle of rotation in radians
309
309
  * @returns {vec3} out
310
310
  */
311
- export function rotateY(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, rad: number): vec3;
311
+ export declare function rotateY(out: any, a: any, b: any, rad: any): any;
312
312
  /**
313
313
  * Rotate a 3D vector around the z-axis
314
314
  * @param {vec3} out The receiving vec3
@@ -317,28 +317,28 @@ export function rotateY(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, rad: number
317
317
  * @param {Number} rad The angle of rotation in radians
318
318
  * @returns {vec3} out
319
319
  */
320
- export function rotateZ(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3, rad: number): vec3;
320
+ export declare function rotateZ(out: any, a: any, b: any, rad: any): any;
321
321
  /**
322
322
  * Get the angle between two 3D vectors
323
323
  * @param {ReadonlyVec3} a The first operand
324
324
  * @param {ReadonlyVec3} b The second operand
325
325
  * @returns {Number} The angle in radians
326
326
  */
327
- export function angle(a: ReadonlyVec3, b: ReadonlyVec3): number;
327
+ export declare function angle(a: any, b: any): number;
328
328
  /**
329
329
  * Set the components of a vec3 to zero
330
330
  *
331
331
  * @param {vec3} out the receiving vector
332
332
  * @returns {vec3} out
333
333
  */
334
- export function zero(out: vec3): vec3;
334
+ export declare function zero(out: any): any;
335
335
  /**
336
336
  * Returns a string representation of a vector
337
337
  *
338
338
  * @param {ReadonlyVec3} a vector to represent as a string
339
339
  * @returns {String} string representation of the vector
340
340
  */
341
- export function str(a: ReadonlyVec3): string;
341
+ export declare function str(a: any): string;
342
342
  /**
343
343
  * Returns whether or not the vectors have exactly the same elements in the same position (when compared with ===)
344
344
  *
@@ -346,7 +346,7 @@ export function str(a: ReadonlyVec3): string;
346
346
  * @param {ReadonlyVec3} b The second vector.
347
347
  * @returns {Boolean} True if the vectors are equal, false otherwise.
348
348
  */
349
- export function exactEquals(a: ReadonlyVec3, b: ReadonlyVec3): boolean;
349
+ export declare function exactEquals(a: any, b: any): boolean;
350
350
  /**
351
351
  * Returns whether or not the vectors have approximately the same elements in the same position.
352
352
  *
@@ -354,63 +354,53 @@ export function exactEquals(a: ReadonlyVec3, b: ReadonlyVec3): boolean;
354
354
  * @param {ReadonlyVec3} b The second vector.
355
355
  * @returns {Boolean} True if the vectors are equal, false otherwise.
356
356
  */
357
- export function equals(a: ReadonlyVec3, b: ReadonlyVec3): boolean;
357
+ export declare function equals(a: any, b: any): boolean;
358
358
  /**
359
- * Subtracts vector b from vector a
360
- *
361
- * @param {vec3} out the receiving vector
362
- * @param {ReadonlyVec3} a the first operand
363
- * @param {ReadonlyVec3} b the second operand
364
- * @returns {vec3} out
359
+ * Alias for {@link vec3.subtract}
360
+ * @function
365
361
  */
366
- export function sub(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
362
+ export declare const sub: typeof subtract;
367
363
  /**
368
- * Multiplies two vec3's
369
- *
370
- * @param {vec3} out the receiving vector
371
- * @param {ReadonlyVec3} a the first operand
372
- * @param {ReadonlyVec3} b the second operand
373
- * @returns {vec3} out
364
+ * Alias for {@link vec3.multiply}
365
+ * @function
374
366
  */
375
- export function mul(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
367
+ export declare const mul: typeof multiply;
376
368
  /**
377
- * Divides two vec3's
378
- *
379
- * @param {vec3} out the receiving vector
380
- * @param {ReadonlyVec3} a the first operand
381
- * @param {ReadonlyVec3} b the second operand
382
- * @returns {vec3} out
369
+ * Alias for {@link vec3.divide}
370
+ * @function
383
371
  */
384
- export function div(out: vec3, a: ReadonlyVec3, b: ReadonlyVec3): vec3;
372
+ export declare const div: typeof divide;
385
373
  /**
386
- * Calculates the euclidian distance between two vec3's
387
- *
388
- * @param {ReadonlyVec3} a the first operand
389
- * @param {ReadonlyVec3} b the second operand
390
- * @returns {Number} distance between a and b
374
+ * Alias for {@link vec3.distance}
375
+ * @function
391
376
  */
392
- export function dist(a: ReadonlyVec3, b: ReadonlyVec3): number;
377
+ export declare const dist: typeof distance;
393
378
  /**
394
- * Calculates the squared euclidian distance between two vec3's
395
- *
396
- * @param {ReadonlyVec3} a the first operand
397
- * @param {ReadonlyVec3} b the second operand
398
- * @returns {Number} squared distance between a and b
379
+ * Alias for {@link vec3.squaredDistance}
380
+ * @function
399
381
  */
400
- export function sqrDist(a: ReadonlyVec3, b: ReadonlyVec3): number;
382
+ export declare const sqrDist: typeof squaredDistance;
401
383
  /**
402
- * Calculates the length of a vec3
403
- *
404
- * @param {ReadonlyVec3} a vector to calculate length of
405
- * @returns {Number} length of a
384
+ * Alias for {@link vec3.length}
385
+ * @function
406
386
  */
407
- export function len(a: ReadonlyVec3): number;
387
+ export declare const len: typeof length;
408
388
  /**
409
- * Calculates the squared length of a vec3
389
+ * Alias for {@link vec3.squaredLength}
390
+ * @function
391
+ */
392
+ export declare const sqrLen: typeof squaredLength;
393
+ /**
394
+ * Perform some operation over an array of vec3s.
410
395
  *
411
- * @param {ReadonlyVec3} a vector to calculate squared length of
412
- * @returns {Number} squared length of a
396
+ * @param {Array} a the array of vectors to iterate over
397
+ * @param {Number} stride Number of elements between the start of each vec3. If 0 assumes tightly packed
398
+ * @param {Number} offset Number of elements to skip at the beginning of the array
399
+ * @param {Number} count Number of vec3s to iterate over. If 0 iterates over entire array
400
+ * @param {Function} fn Function to call for each vector in the array
401
+ * @param {Object} [arg] additional argument to pass to fn
402
+ * @returns {Array} a
403
+ * @function
413
404
  */
414
- export function sqrLen(a: ReadonlyVec3): number;
415
- export function forEach(a: any, stride: any, offset: any, count: any, fn: any, arg: any): any;
405
+ export declare const forEach: (a: any, stride: any, offset: any, count: any, fn: any, arg: any) => any;
416
406
  //# sourceMappingURL=vec3.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vec3.d.ts","sourceRoot":"","sources":["../../src/gl-matrix/vec3.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vec3.d.ts","sourceRoot":"","sources":["../../src/gl-matrix/vec3.ts"],"names":[],"mappings":"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"}