public VirtualPixel2D(int width, int height, [System.Runtime.CompilerServices.CallerMemberName] string name = "")
: base(name)
{
if (width <= 0)
throw new ArgumentOutOfRangeException("width");
if (height <= 0)
throw new ArgumentOutOfRangeException("height");
this.showBuffer = new Subject<Color[,]>();
this.globalBrightness = new ControlSubject<double>(1.0);
this.pixelWidth = width;
this.pixelHeight = height;
this.brightness = new double[width, height];
this.color = new Color[width, height];
}