Ejemplo n.º 1
0
        public static double[,,] Pad(this double[,,] input, int size)
        {
            if (size < 0)
            {
                throw new Exception(Consts.MatrixHelperMessages.PadPaddingValueInvalid);
            }

            var output = new double[
                input.GetLength(0),
                input.GetLength(1) + size * 2,
                input.GetLength(2) + size * 2];

            for (int k = 0; k < input.GetLength(0); k++)
            {
                for (int i = 0; i < input.GetLength(1); i++)
                {
                    for (int j = 0; j < input.GetLength(2); j++)
                    {
                        output[k, i + size, j + size] = (double)input.GetValue(k, i, j);
                    }
                }
            }

            return(output);
        }