private void LogInfo(RawImageData info, string[] comments = null) { if (info == null) { logbox.AppendText("NULL\r\n"); } else if (info.IsEmpty) { logbox.AppendText("Empty\r\n"); } else { logbox.AppendText(string.Format("Width = {0}\r\n", info.Width)); logbox.AppendText(string.Format("Height = {0}\r\n", info.Height)); logbox.AppendText(string.Format("Depth = {0}\r\n", info.PixelDepth)); logbox.AppendText(string.Format("Dpi = {0}\r\n", info.Resolution)); if (comments != null) { logbox.AppendText("Comments:\r\n"); var index = 0; foreach (var c in comments) { logbox.AppendText(string.Format("[{0}] = {1}\r\n", index, NormalizeComment(c, 9))); index++; } } } }
/*----------------------------------------------------------------------------------------- * * More Math : * * -----------------------------------------------------------------------------------------*/ public void Normalize() { float max = RawImageData.Max(v => Luminance(v)); float min = RawImageData.Min(v => Luminance(v)); if (!MathUtil.WithinEpsilon(max, 0, float.Epsilon)) { PerpixelProcessing(v => (v - min) / (max - min)); } }
public ElementDataBase Serialize(UIBehaviour element) { RawImageData imageData = new RawImageData(); RawImage imageElement = element as RawImage; if (imageElement) { imageData.colorData = imageElement.color.Serialize(); imageData.textureData = imageElement.texture?.Serialize(); imageData.uvRect = imageElement.uvRect.Serialize(); } return(imageData); }
public void Deserialize(NetworkManager networkManager, ElementDataBase elementData, UIBehaviour element) { RawImageData imageData = elementData as RawImageData; RawImage imageElement = element as RawImage; if (imageElement) { imageElement.color = imageData.colorData.Deserialize(); if (imageElement.texture == null) { imageElement.texture = imageData.textureData.Deserialize(); } imageElement.uvRect = imageData.uvRect.Deserialize(); } }
public void Run(ICommandInteraction writer, DecimalIntegerToken widthToken, DecimalIntegerToken heightToken) { // This method creates white rectangle, intended for testing purposes. var width = (int)widthToken.Value; var height = (int)heightToken.Value; if (width <= 0 || height <= 0) { throw new RecoverableException("Width and height must be positive values"); } var bytes = new byte[width * height * RawImageData.PixelFormat.GetColorDepth()]; for (var i = 0; i < bytes.Length; ++i) { bytes[i] = (byte)0xFF; } var image = new RawImageData(bytes, width, height); writer.WriteRaw(InlineImage.Encode(image.ToPng())); }