Nihilistic Party Mantra

    gl-vec3
    DefinitelyTyped icon, indicating that this package has TypeScript declarations provided by the separate @types/gl-vec3 package

    1.1.3 • Public • Published

    gl-vec3

    stable

    Part of a fork of @toji's gl-matrix split into smaller pieces: this package contains glMatrix.vec3.

    Usage

    NPM

    vec3 = require('gl-vec3')

    Will load all of the module's functionality and expose it on a single object. Note that any of the methods may also be required directly from their files.

    For example, the following are equivalent:

    var scale = require('gl-vec3').scale
    var scale = require('gl-vec3/scale')

    API

    add(out:vec3, a:vec3, b:vec3)

    Adds two vec3's

    angle(a:vec3, b:vec3)

    Get the angle between two 3D vectors

    ceil(out:vec3, a:vec3)

    Math.ceil the components of a vec3

    clone(a:vec3)

    Creates a new vec3 initialized with values from an existing vector

    copy(out:vec3, a:vec3)

    Copy the values from one vec3 to another

    create()

    Creates a new, empty vec3

    cross(out:vec3, a:vec3, b:vec3)

    Computes the cross product of two vec3's

    distance(a:vec3, b:vec3)

    Calculates the euclidian distance between two vec3's. Aliased as dist

    divide(out:vec3, a:vec3, b:vec3)

    Divides two vec3's. Aliased as div

    dot(a:vec3, b:vec3)

    Calculates the dot product of two vec3's

    equals(a:vec3, b:vec3)

    Returns whether or not the vectors have approximately the same elements in the same position.

    exactEquals(a:vec3, b:vec3)

    Returns whether or not the vectors exactly have the same elements in the same position (when compared with ===)

    floor(out:vec3, a:vec3)

    Math.floor the components of a vec3

    forEach(a:Array, stride:Number, offset:Number, count:Number, fn:Function, [arg]:Object)

    Perform some operation over an array of vec3s.

    fromValues(x:Number, y:Number, z:Number)

    Creates a new vec3 initialized with the given values

    inverse(out:vec3, a:vec3)

    Returns the inverse of the components of a vec3

    length(a:vec3)

    Calculates the length of a vec3. Aliased as len

    lerp(out:vec3, a:vec3, b:vec3, t:Number)

    Performs a linear interpolation between two vec3's

    max(out:vec3, a:vec3, b:vec3)

    Returns the maximum of two vec3's

    min(out:vec3, a:vec3, b:vec3)

    Returns the minimum of two vec3's

    multiply(out:vec3, a:vec3, b:vec3)

    Multiplies two vec3's. Aliased as mul

    negate(out:vec3, a:vec3)

    Negates the components of a vec3

    normalize(out:vec3, a:vec3)

    Normalize a vec3

    random(out:vec3, [scale]:Number)

    Generates a random vector with the given scale

    rotateX(out:vec3, a:vec3, b:vec3, c:Number)

    Rotate a 3D vector around the x-axis

    rotateY(out:vec3, a:vec3, b:vec3, c:Number)

    Rotate a 3D vector around the y-axis

    rotateZ(out:vec3, a:vec3, b:vec3, c:Number)

    Rotate a 3D vector around the z-axis

    round(out:vec3, a:vec3)

    Math.round the components of a vec3

    scale(out:vec3, a:vec3, b:Number)

    Scales a vec3 by a scalar number

    scaleAndAdd(out:vec3, a:vec3, b:vec3, scale:Number)

    Adds two vec3's after scaling the second operand by a scalar value

    set(out:vec3, x:Number, y:Number, z:Number)

    Set the components of a vec3 to the given values

    squaredDistance(a:vec3, b:vec3)

    Calculates the squared euclidian distance between two vec3's. Aliased as sqrDist

    squaredLength(a:vec3)

    Calculates the squared length of a vec3. Aliased as sqrLen

    subtract(out:vec3, a:vec3, b:vec3)

    Subtracts vector b from vector a. Aliased as sub

    transformMat3(out:vec3, a:vec3, m:mat3)

    Transforms the vec3 with a mat3.

    transformMat4(out:vec3, a:vec3, m:mat4)

    Transforms the vec3 with a mat4. 4th vector component is implicitly '1'

    transformQuat(out:vec3, a:vec3, q:quat)

    Transforms the vec3 with a quat

    License

    zlib. See LICENSE.md for details.

    Install

    npm i gl-vec3

    DownloadsWeekly Downloads

    136,070

    Version

    1.1.3

    License

    zlib

    Unpacked Size

    26.1 kB

    Total Files

    49

    Last publish

    Collaborators

    • alvinsight
    • chrisdickinson
    • hughsk
    • mattdesl
    • mikkoh
    • mikolalysenko
    • rezaali
    • rreusser
    • substack
    • tatumcreative
    • thibauts
    • wwwtyro
    • yoshuawuyts