Nez.Textures.GaussianBlur.createBlurredGrayscaleTexture C# (CSharp) Method

createBlurredGrayscaleTexture() public static method

public static createBlurredGrayscaleTexture ( Color srcData, int width, int height, double deviation = 1 ) : Color[]
srcData Color
width int
height int
deviation double
return Color[]
		public static Color[] createBlurredGrayscaleTexture( Color[] srcData, int width, int height, double deviation = 1 )
		{
			var destData = new Color[width * height];
			var matrix = new double[width, height];

			// first we calculate the grayscale and store it in matrix
			for( var i = 0; i < width; i++ )
			{
				for( var j = 0; j < height; j++ )
					matrix[i, j] = srcData[i + j * width].grayscale().R;
			}

			matrix = GaussianBlur.gaussianConvolution( matrix, deviation );
			for( var i = 0; i < width; i++ )
			{
				for( var j = 0; j < height; j++ )
				{
					var val = (int)Math.Min( 255, matrix[i, j] );
					destData[i + j * width] = new Color( val, val, val, srcData[i + j * width].A );
				}
			}

			return destData;
		}

Same methods

GaussianBlur::createBlurredGrayscaleTexture ( Microsoft.Xna.Framework.Graphics.Texture2D image, double deviation = 1 ) : Microsoft.Xna.Framework.Graphics.Texture2D

Usage Example

Example #1
0
 public static Color[] createBlurredGrayscaleTexture(
     Color[] srcData,
     int width,
     int height,
     double deviation = 1)
 {
     return(GaussianBlur.createBlurredGrayscaleTexture(srcData, width, height, deviation));
 }
All Usage Examples Of Nez.Textures.GaussianBlur::createBlurredGrayscaleTexture