/// <summary> /// Retourne une nouvelle matrice correspond au résultat de l'exécution de la fonction donnée sur la matrice passée en paramètre. /// </summary> /// <param name="pMatrix">Matrice contenant les données qui doivent passer dans la fonction.</param> /// <param name="function">Fonction à appliquer sur la matrice.</param> /// <returns>Matrice correspondante au résultat de l'exécution de la fonction sur la matrice passée en paramètre.</returns> public static Matrix ExecuteOnMatrix(Matrix pMatrix, FunctionOnMatrix function) { Matrix result = pMatrix.Copy(); result.ExecuteOnMatrix(function); return(result); }
/// <summary> /// Exécutes la fonction passée en paramètre sur chaque valeur à l'intérieur de la matrice. /// </summary> /// <param name="function">Fonction à appliquer sur la matrice.</param> public void ExecuteOnMatrix(FunctionOnMatrix function) { for (int i = 0; i < Rows; i++) { for (int j = 0; j < Columns; j++) { float val = Data[i * Columns + j]; Data[i * Columns + j] = function(val, i, j); } } }