Exemple #1
0
 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);
     }
 }
Exemple #2
0
            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);
                }
            }