functions.js
should be able to create a vector from two points
should be able to add and subtract vectors/arrays
can calculate the sum of squares
can calculate the scalar of a vector/array
can normalize a vector/array
can scale a vector/array by a factor
should find the distance between two points
should find the directional unit vector between two points
should describe relationships between two points
should find the an orthogonal unit vector
should be able to calculate the vector dot product
should be able to calculate the psudo cross product of 2d vectors
should be able to find the cross and triple product of 3d vectors
Can find angles of 2d vectors
Can find angles of 3d vectors
should be able to clamp values and vectors/arrays
Can generate threshold values with step and smoothstep functions (as in GLSL)
Can mix vectors, matrices and values
Can round vectors and values
Can convert between degrees and radians
can create a sequence of interpolated values
should allow easy check for null vectors
matrix.js
should be possible to instantiate and assign values using factory functions
should be possible to instantiate matrices from existing arrays
should be possible to instantiate matrices from vectors
should be able to extract values or subsets of values
should be possible to transpose a matrix
should be possible to remove rows/colums from a matrix
should be possible to calculate the product between two matrices as well as matrix and vector/array
should be able to find the inverse of a (square) matrix
should be able to calculate its determinant
some example use cases
Can transform from one dimension to another
utils.js
should be able to transpose rows to columns where 2d data are stored in 1d arrays
should be able to flatten a list, that may contain nested arrays, of arguments into a 1d array
vector.js
should be able to use array getters/setters and extended/added vector getter/setters
should be possible to clone vector
should be mappable to float32 array
should be possible to add/subtract two vectors
should be possible to add/subtract a scaled version of a vector
should be possible to add/subtract multiple vectors
should calculate the vector scalar (length)
should be able to scale vector
should be able to negate a vector
should be able to calculate the psudo cross product of two 2d vectors
should be able to calculate the distance between two vectors