UNPKG

ml-matrix

Version:

Matrix manipulation and computation library

29 lines (24 loc) 712 B
import { checkRange } from '../util'; import BaseView from './base'; export default class MatrixSubView extends BaseView { constructor(matrix, startRow, endRow, startColumn, endColumn) { checkRange(matrix, startRow, endRow, startColumn, endColumn); super(matrix, endRow - startRow + 1, endColumn - startColumn + 1); this.startRow = startRow; this.startColumn = startColumn; } set(rowIndex, columnIndex, value) { this.matrix.set( this.startRow + rowIndex, this.startColumn + columnIndex, value, ); return this; } get(rowIndex, columnIndex) { return this.matrix.get( this.startRow + rowIndex, this.startColumn + columnIndex, ); } }