Esempio n. 1
0
        public void ExportCroppedImage3D()
        {
            var model = new Models(1);

            model.AddImageFromFile(TestData.Directory + "checkers3d.dds");
            model.Apply();

            TestData.TestCheckers3DLevel0(model.Pipelines[0].Image.GetPixelColors(LayerMipmapSlice.Mip0));

            model.Export.Export(new ExportDescription(model.Pipelines[0].Image, ExportDir + "cropped", "dds")
            {
                FileFormat  = GliFormat.RGBA8_SRGB,
                Mipmap      = 0,
                UseCropping = true,
                CropStart   = new Size3(1, 0, 2).ToCoords(model.Images.Size),
                CropEnd     = new Size3(2, 1, 3).ToCoords(model.Images.Size)
            });

            var newTex = new Texture3D(IO.LoadImage(ExportDir + "cropped.dds"));

            var colors = newTex.GetPixelColors(0);

            Assert.AreEqual(2 * 2 * 2, colors.Length);
            Assert.IsTrue(Colors.White.Equals(colors[0], Color.Channel.Rgb));
            Assert.IsTrue(Colors.Black.Equals(colors[1], Color.Channel.Rgb));
            Assert.IsTrue(Colors.White.Equals(colors[2], Color.Channel.Rgb));
            Assert.IsTrue(Colors.Black.Equals(colors[3], Color.Channel.Rgb));

            Assert.IsTrue(Colors.White.Equals(colors[4], Color.Channel.Rgb));
            Assert.IsTrue(Colors.Black.Equals(colors[5], Color.Channel.Rgb));
            Assert.IsTrue(Colors.White.Equals(colors[6], Color.Channel.Rgb));
            Assert.IsTrue(Colors.Black.Equals(colors[7], Color.Channel.Rgb));
        }
Esempio n. 2
0
        public void ExportCroppedImage3D()
        {
            var model = new Models(1);

            model.AddImageFromFile(TestData.Directory + "checkers3d.dds");
            model.Export.Mipmap      = 0;
            model.Export.UseCropping = true;

            model.Export.CropStartX = 1;
            model.Export.CropEndX   = 2;

            model.Export.CropStartY = 0;
            model.Export.CropEndY   = 1;

            model.Export.CropStartZ = 2;
            model.Export.CropEndZ   = 3;
            model.Apply();

            model.ExportPipelineImage(ExportDir + "cropped", "dds", GliFormat.RGBA8_SRGB);
            var newTex = new Texture3D(IO.LoadImage(ExportDir + "cropped.dds"));

            var colors = newTex.GetPixelColors(0);

            Assert.AreEqual(2 * 2 * 2, colors.Length);
            Assert.IsTrue(Color.White.Equals(colors[0], Color.Channel.Rgb));
            Assert.IsTrue(Color.Black.Equals(colors[1], Color.Channel.Rgb));
            Assert.IsTrue(Color.White.Equals(colors[2], Color.Channel.Rgb));
            Assert.IsTrue(Color.Black.Equals(colors[3], Color.Channel.Rgb));

            Assert.IsTrue(Color.White.Equals(colors[4], Color.Channel.Rgb));
            Assert.IsTrue(Color.Black.Equals(colors[5], Color.Channel.Rgb));
            Assert.IsTrue(Color.White.Equals(colors[6], Color.Channel.Rgb));
            Assert.IsTrue(Color.Black.Equals(colors[7], Color.Channel.Rgb));
        }