public void Execute() { try { var sgi = new CDB.SiliconGraphicsImage(); var data = sgi.ReadRGB8("", BytesNA.ToArray(), out int w, out int h, out int c); DataNA.CopyFrom(data); } catch (Exception e) { Debug.LogException(e); } }
public void Execute() { try { // TODO: how do we get the size? CSJ2K.Util.PortableImage img = CSJ2K.J2kImage.FromBytes(BytesNA.ToArray()); int[] ib = img.GetComponent(0); int[] ig = img.GetComponent(1); int[] ir = img.GetComponent(2); int dim = (int)Math.Sqrt(ib.Length); var result = new byte[dim * dim * 3]; for (int y = 0; y < dim; ++y) { for (int x = 0; x < dim; ++x) { int i = (y * dim) + x; result[(i * 3) + 0] = (byte)ir[i]; result[(i * 3) + 1] = (byte)ig[i]; result[(i * 3) + 2] = (byte)ib[i]; } } var sgi = new CDB.SiliconGraphicsImage(); var data = sgi.ReadRGB8("", BytesNA.ToArray(), out int w, out int h, out int c); DataNA.CopyFrom(data); } catch (Exception e) { Debug.LogException(e); } }