public override Value View(CellAddr ulCa, CellAddr lrCa) { int cols = Cols, rows = Rows, col0 = ulCa.col, row0 = ulCa.row; Value[,] vals = new Value[cols, rows]; for (int c = 0; c < cols; c++) { for (int r = 0; r < rows; r++) { vals[c, r] = NumberValue.Make(matrix[row0 + r, col0 + c]); } } return(new ArrayExplicit(vals)); }
public static Value FromDoubleArray1D(Object o) { double[] xs = o as double[]; if (xs != null) { Value[,] vs = new Value[xs.Length, 1]; for (int c = 0; c < xs.Length; c++) { vs[c, 0] = NumberValue.Make(xs[c]); } return(new ArrayExplicit(vs)); } else { return(ErrorValue.argTypeError); } }
public override Value this[int col, int row] { get { return(NumberValue.Make(matrix[row, col])); } }