public RgbaArrays Decrypt(RgbaArrays image, EncryptionType type) { var decryptedImage = new RgbaArrays(); switch (type) { case EncryptionType.HorisontalPlusAside: decryptedImage = this.decryptionManager.HorisontalDecryptPlusAside(image, rsaElements); break; case EncryptionType.HorisontalMinusAside: decryptedImage = this.decryptionManager.HorisontalDecryptMinusAside(image, rsaElements); break; case EncryptionType.VerticalPlusAside: decryptedImage = this.decryptionManager.VerticalDecryptPlusAside(image, rsaElements); break; case EncryptionType.VericalMinusAside: decryptedImage = this.decryptionManager.VerticalDecryptMinusAside(image, rsaElements); break; default: throw new ArgumentException(Constants.DecryptionExceptionMessage); } return(decryptedImage); }
public RgbaArrays VerticalEncryptMinusAside(RgbaArrays image, RsaElements rsa) { this.height = image.AArray.GetLength(0); this.wigth = image.AArray.GetLength(1); this.rsaElements = rsa; return(new RgbaArrays { AArray = this.EncryptOneColourVertical(image.AArray, false), BArray = this.EncryptOneColourVertical(image.BArray, false), GArray = this.EncryptOneColourVertical(image.GArray, false), RArray = this.EncryptOneColourVertical(image.RArray, false), }); }
public RgbaArrays HorisontalEncryptPlusAside(RgbaArrays image, RsaElements rsa) { this.height = image.AArray.GetLength(0); this.wigth = image.AArray.GetLength(1); this.rsaElements = rsa; return(new RgbaArrays { AArray = this.EncryptOneColourHorisontal(image.AArray, true), BArray = this.EncryptOneColourHorisontal(image.BArray, true), GArray = this.EncryptOneColourHorisontal(image.GArray, true), RArray = this.EncryptOneColourHorisontal(image.RArray, true), }); }
public Rgba[,] RgbaArraysToRgba(RgbaArrays rgbaArrays) { var imageArray = new Rgba[rgbaArrays.AArray.GetLength(0), rgbaArrays.AArray.GetLength(1)]; for (var i = 0; i < rgbaArrays.AArray.GetLength(0); i++) { for (var j = 0; j < rgbaArrays.AArray.GetLength(1); j++) { imageArray[i, j] = new Rgba { A = rgbaArrays.AArray[i, j], B = rgbaArrays.BArray[i, j], G = rgbaArrays.GArray[i, j], R = rgbaArrays.RArray[i, j], }; } } return(imageArray); }
public RgbaArrays RgbaToRgbaArrays(Rgba[,] image) { var rgbaArrays = new RgbaArrays { AArray = new long[image.GetLength(0), image.GetLength(1)], BArray = new long[image.GetLength(0), image.GetLength(1)], GArray = new long[image.GetLength(0), image.GetLength(1)], RArray = new long[image.GetLength(0), image.GetLength(1)] }; for (var i = 0; i < image.GetLength(0); i++) { for (var j = 0; j < image.GetLength(1); j++) { rgbaArrays.AArray[i, j] = image[i, j].A; rgbaArrays.BArray[i, j] = image[i, j].B; rgbaArrays.GArray[i, j] = image[i, j].G; rgbaArrays.RArray[i, j] = image[i, j].R; } } return(rgbaArrays); }
public Bitmap PrepareToOutput(RgbaArrays image) { return(this.imageMapper.RgbaToBitmapMap(this.imageMapper.RgbaArraysToRgba(image))); }