Get5To8BitInvertedGamma() public static méthode

public static Get5To8BitInvertedGamma ( double gamma = DefaultGamma ) : IEnumerable
gamma double
Résultat IEnumerable
        public static Color[,] BufferToPixels(byte[] buffer, double senseHatGamma)
        {
            var pixels = new Color[8, 8];

            byte[] senseHatInverseGammaTable = GammaCalc.Get5To8BitInvertedGamma(senseHatGamma).ToArray();

            int bufferIndex = 0;

            for (int y = 0; y < 8; y++)
            {
                for (int x = 0; x < 8; x++)
                {
                    var r = senseHatInverseGammaTable[buffer[bufferIndex]];
                    var g = senseHatInverseGammaTable[buffer[bufferIndex + 8]];
                    var b = senseHatInverseGammaTable[buffer[bufferIndex + 16]];
                    bufferIndex++;

                    pixels[x, y] = Color.FromArgb(255, r, g, b);
                }

                bufferIndex += 16;
            }

            return(pixels);
        }
Exemple #2
0
        public static Image BufferToImage(byte[] buffer, double senseHatGamma)
        {
            var image = new Image(8, 8);

            byte[] senseHatInverseGammaTable = GammaCalc.Get5To8BitInvertedGamma(senseHatGamma).ToArray();

            int bufferIndex = 0;

            for (int y = 0; y < 8; y++)
            {
                for (int x = 0; x < 8; x++)
                {
                    var r = senseHatInverseGammaTable[buffer[bufferIndex]];
                    var g = senseHatInverseGammaTable[buffer[bufferIndex + 8]];
                    var b = senseHatInverseGammaTable[buffer[bufferIndex + 16]];
                    bufferIndex++;

                    image[x, y] = Color.FromArgb(255, r, g, b);
                }

                bufferIndex += 16;
            }

            return(image);
        }