// Clear public void Clear() { Reds = new int[count * size]; Greens = new int[count * size]; Blues = new int[count * size]; palette = Do.RGBToColors(Reds, Greens, Blues); palettes = Do.RGBToColors(Reds, Greens, Blues, count, size); }
public void Clear(int startIndex) { for (int i = startIndex; i < count; i++) { for (int a = 0; a < size; a++) { Reds[i * size + a] = 0; Greens[i * size + a] = 0; Blues[i * size + a] = 0; } } palette = Do.RGBToColors(Reds, Greens, Blues); palettes = Do.RGBToColors(Reds, Greens, Blues, count, size); }
// Read/write buffer private void ReadFromBuffer() { Reds = new int[count * size]; Greens = new int[count * size]; Blues = new int[count * size]; for (int i = 0; i < count; i++) { for (int a = 0; a < size; a++) { if ((i * Length) + (a * 2) + offset + 1 >= Buffer.Length) { continue; } ushort color = Bits.GetShort(Buffer, (i * Length) + (a * 2) + offset); Reds[i * size + a] = (color % 0x20) * 8; Greens[i * size + a] = ((color >> 5) % 0x20) * 8; Blues[i * size + a] = ((color >> 10) % 0x20) * 8; } } palette = Do.RGBToColors(Reds, Greens, Blues); palettes = Do.RGBToColors(Reds, Greens, Blues, count, size); }