public void WIP_ExploringImprovedBitmap() { var p = Puzzle.Builder.DefaultTestPuzzle(); var floor = p.ToMap(p.Definition.AllFloors); outp.WriteLine($"{floor.GetType().Name} = {floor.SizeInBytes()} bytes"); var alt = new BitmapByteSeq(floor); outp.WriteLine($"{alt.GetType().Name} = {alt.SizeInBytes()}"); var enumFloor = StaticAnalysis.IndexPositions(floor); outp.WriteLine($"Floors : {enumFloor.Count}={enumFloor.Count /8 + 1}bytes vs {floor.Size.X * floor.Size.Y}"); }
private BitmapMaskedIndex.Master BuildMaster(Puzzle p) { var floors = p.ToMap(p.Definition.AllFloors); var master = new BitmapMaskedIndex.Master(floors); outp.WriteLine(master.Reference.ToString()); outp.WriteLine($"Size: {master}"); outp.WriteLine($"Size.Bitmap: {Bitmap.SizeInBytes(master.Reference.Size)}"); outp.WriteLine($"Size.BitmapByteSeq: {BitmapByteSeq.SizeInBytes(master.Reference.Size)}"); outp.WriteLine(new FluentString().ForEach(master.MapIn)); outp.WriteLine(new FluentString(Environment.NewLine).ForEach(master.MapOut.WithIndex())); return(master); }