public AnimatedCellBitmapSet(FramerateDelay delay, params CellBitmap[] bitmaps) { Id = Interlocked.Increment(ref _idCounter); Delay = delay.Delay; Bitmaps = bitmaps; _rotatedCloneLazy = new Lazy <AnimatedCellBitmapSet>(() => new AnimatedCellBitmapSet( delay, Bitmaps .Select(x => BitmapExtensions.Get90DegreesRotatedClone(x.Bitmap)) .Select(x => new CellBitmap(x)).ToArray() )); _bitmapEnumerator = Bitmaps.GetInifiniteEnumerator(); _bitmapEnumerator.MoveNext(); }