Example #1
0
        public void TestConstructor()
        {
            var chip           = GraphicUtils.GetChipByRegion(10, 20, 40, 50);
            var expectedRegion = new SKRectI(10, 20, 50, 70);
            var expectedPixels = GraphicUtils.GetPixelsByDimensions(40, 50);

            Assert.AreEqual(expectedRegion, chip.Region);
            Assert.AreEqual(expectedPixels, chip.Pixels);
        }
        public void TestToMLMultiArray_DefaultDimensions()
        {
            var chip = GraphicUtils.GetChipByRegion(0, 0, SharedConstants.DefaultChipWidth,
                                                    SharedConstants.DefaultChipHeight);
            var result = chip.ToMLMultiArray();

            Assert.AreEqual(new nint[] { 1, 1, 3, SharedConstants.DefaultChipWidth, SharedConstants.DefaultChipHeight },
                            result.Shape);

            for (var i = 0; i < SharedConstants.DefaultChipWidth; i++)
            {
                for (var j = 0; j < SharedConstants.DefaultChipHeight; j++)
                {
                    AssertMLMultiArrayEntry(chip.Pixels[i][j], result, i, j);
                }
            }
        }
        public void TestToMLMultiArray_SmallThanDefault(int width, int height)
        {
            var chip   = GraphicUtils.GetChipByRegion(0, 0, width, height);
            var result = chip.ToMLMultiArray();

            Assert.AreEqual(new nint[] { 1, 1, 3, SharedConstants.DefaultChipWidth, SharedConstants.DefaultChipHeight },
                            result.Shape);

            for (var i = 0; i < SharedConstants.DefaultChipWidth; i++)
            {
                for (var j = 0; j < SharedConstants.DefaultChipHeight; j++)
                {
                    if (i < chip.Region.Width && j < chip.Region.Height)
                    {
                        AssertMLMultiArrayEntry(chip.Pixels[i][j], result, i, j);
                    }
                    else
                    {
                        AssertMLMultiArrayEntry(SKColors.Black, result, i, j);
                    }
                }
            }
        }