1.1.0 • Published 3 years ago

@mightyplow/matrix v1.1.0

Weekly downloads
-
License
ISC
Repository
-
Last release
3 years ago

@mightyplow/matrix

This class helps handling 2-dimensional arrays (=> a matrix). It provides methods to retrieve data about the matrix as well as manipulating the matrix data.

The module can be used with node directly and with bundlers. For bundlers it ships with minified ES5 compatible code. For node it is transpiled for compatibility with version 5 and above.

Installation

npm install -P @mightyplow/matrix

Matrix

new Matrix(initialData)

Creates an instance of the Matrix class. This constructor function can be used with and without the new keyword.

ParamType
initialDataArray.<Array.<any>>

matrix.numCols : int

Returns the number of columns.

matrix.numRows : int

Returns the number of rows.

matrix.getData() ⇒ Array.<Array.<any>>

Returns the 2-dimensional array.

matrix.setData(data) ⇒ Array.<Array.<any>>

Sets the 2-dimensional array.

ParamTypeDefault
dataArray.<Array.<any>>[]

matrix.clear() ⇒ Array.<Array.<any>>

Removes all data in matrix and leaves behind an empty array.

matrix.getRow(rowNum) ⇒ Array.<any>

Returns a single specific row of the matrix. When passing a negative number, it is counted from the end.

Throws:

  • Error
ParamType
rowNumint

matrix.getRows(length, startRow) ⇒ Array.<Array.<any>>

Returns multiple specific rows of the matrix.

ParamTypeDefault
lengthintthis.numRows
startRowint0

matrix.insertRows(rows, startRow) ⇒ Array.<Array.<any>>

Insert multiple rows at a given point in the matrix.

ParamTypeDefault
rowsArray.<any>[]
startRowintthis.numRows

matrix.deleteRows(startRow, length) ⇒ Array.<Array.<any>>

Deletes multiple rows at a given point in the matrix and returns the deleted rows.

Returns: Array.<Array.<any>> - deleted rows
Throws:

  • Error
ParamTypeDefault
startRowint
lengthint1

matrix.getCol(colNum) ⇒ Array.<any>

Returns a single specific column of the matrix. When passing a negative number, it is counted from the end.

Throws:

  • Error
ParamType
colNumint

matrix.getCols(length, startCol) ⇒ Array.<Array.<any>>

Returns multiple specific columns of the matrix.

ParamTypeDefault
lengthintthis.numCols
startColint0

matrix.insertCols(cols, startCol) ⇒ Array.<Array.<any>>

Insert multiple columns at a given point in the matrix.

ParamTypeDefault
colsArray.<any>[]
startColintthis.numRows

matrix.deleteCols(startCol, length) ⇒ Array.<Array.<any>>

Deletes multiple columns at a given point in the matrix and returns the deleted rows.

Returns: Array.<Array.<any>> - deleted rows
Throws:

  • Error
ParamTypeDefault
startColint
lengthint1

matrix.rotateCw() ⇒ Array.<Array.<any>>

Rotates the matrix clockwise.

matrix.rotateCcw() ⇒ Array.<Array.<any>>

Rotates the matrix counter clockwise.

matrix.flipH() ⇒ Array.<Array.<any>>

Flips the matrix horizontally.

matrix.flipV() ⇒ Array.<Array.<any>>

Flips the matrix vertically.