matrix-utilities

Tiny, high performance utilities for performing 2/3D matrix calculations. Full unit test coverage, compatible with Node/CommonJS, AMD, and browser globals.

matrix-utilities

Tiny (607b gzipped), high performance utilities for performing 2/3D matrix calculations. Full unit test coverage, compatible with Node/CommonJS, AMD, and browser globals.

util = require 'matrix-utilities'
 
util.Identity() # returns new 3D identity matrix 
util.add matrix1matrix2 # returns matrix1 + matrix2 
util.multiply matrix1matrix2 # returns matrix1×matrix2 
util.flip matrix # flip a matrix along x=y 
util.to2d matrix
util.to3d matrix
util = require 'matrix-utilities'
 
# identity 
 
matrix = util.Identity()
###
    #=>
    [
        [1, 0, 0, 0]
        [0, 1, 0, 0]
        [0, 0, 1, 0]
        [0, 0, 0, 1]
    ]
###
 
# to2d 
 
util.to2d matrix
###
    #=>
    [
        [1, 0, 0]
        [0, 1, 0]
    ]
###
 
# flip 
 
util.flip [
    [123]
    [456]
    [789]
]
###
    #=>
    [
        [1, 4, 7]
        [2, 5, 8]
        [3, 6, 9]
    ]
###
 
# add 
 
one = [
    [24]
    [68]
]
 
two = [
    [13]
    [57]
]
 
util.add onetwo
###
    #=>
    [
        [3, 7]
        [11, 15]
    ]
###
 
# multiply 
 
one = [
    [123]
    [456]
    [789]
]
 
two = [
    [12]
    [34]
    [56]
]
 
util.multiply onetwo
###
    #=>
    [
        [22, 28]
        [49, 64]
        [76, 100]
    ]
###