示例#1
0
        public void CreateMultipleDemPlatesFromPyramidsTest()
        {
            int    levels         = 5;
            string testFolderName = Path.Combine(TestDataPath, "CreateMultipleDemPlatesFromPyramidsTest", "TestDemMultiplePlateFolder");

            MockClasses.MockMultipleDemTileLocator tileLocator = new MockClasses.MockMultipleDemTileLocator();

            MultipleDemPlateFileGenerator target = new MultipleDemPlateFileGenerator(testFolderName, levels);

            target.CreateFromDemTile(tileLocator);

            WtmlCollection collection = new WtmlCollection("test", "Test.jpeg", "testtexture", levels, ProjectionTypes.Mercator);

            collection.Save(Path.Combine(TestDataPath, "CreateMultipleDemPlatesFromPyramidsTest", "CreateMultipleDemPlatesFromPyramidsTest.wtml"));

            Assert.IsTrue(Directory.Exists(testFolderName));
            Assert.IsTrue(File.Exists(Path.Combine(testFolderName, "DL0X0Y0.plate")));

            Assert.IsTrue(Directory.Exists(Path.Combine(testFolderName, "2")));
            Assert.AreEqual(16, Directory.GetFiles(Path.Combine(testFolderName, "2"), "*.plate").Length);

            ValidatePyramid(testFolderName, tileLocator, 0, 0, 0);
            ValidatePyramid(testFolderName, tileLocator, 2, 0, 0);
            ValidatePyramid(testFolderName, tileLocator, 3, 1, 1);
            ValidatePyramid(testFolderName, tileLocator, 5, 6, 6);
        }
示例#2
0
        /// <summary>
        /// This function is used to validate the bitmap at specified level, x and y.
        /// </summary>
        /// <param name="testFolderName">Plate file folder.</param>
        /// <param name="tileLocator">Tile Locator.</param>
        /// <param name="level">Level of tile.</param>
        /// <param name="x">X coordinate of the tile.</param>
        /// <param name="y">Y coordinate of the tile.</param>
        private void ValidatePyramid(string testFolderName, MockClasses.MockMultipleDemTileLocator tileLocator, int level, int x, int y)
        {
            Stream tileStream = PlateFileHelper.GetDEMTileFromMultiplePlates(level, x, y, testFolderName);

            short[] expected = tileLocator.Deserialize(level, x, y);
            short[] actual   = GetDemTileData(tileStream);
            Assert.IsTrue(CompareShortArray(expected, actual));
        }
        public void CreateMultipleDemPlatesFromPyramidsTest()
        {
            int levels = 5;
            string testFolderName = Path.Combine(TestDataPath, "CreateMultipleDemPlatesFromPyramidsTest", "TestDemMultiplePlateFolder");
            MockClasses.MockMultipleDemTileLocator tileLocator = new MockClasses.MockMultipleDemTileLocator();

            MultipleDemPlateFileGenerator target = new MultipleDemPlateFileGenerator(testFolderName, levels);
            target.CreateFromDemTile(tileLocator);

            WtmlCollection collection = new WtmlCollection("test", "Test.jpeg", "testtexture", levels, ProjectionTypes.Mercator);
            collection.Save(Path.Combine(TestDataPath, "CreateMultipleDemPlatesFromPyramidsTest", "CreateMultipleDemPlatesFromPyramidsTest.wtml"));

            Assert.IsTrue(Directory.Exists(testFolderName));
            Assert.IsTrue(File.Exists(Path.Combine(testFolderName, "DL0X0Y0.plate")));

            Assert.IsTrue(Directory.Exists(Path.Combine(testFolderName, "2")));
            Assert.AreEqual(16, Directory.GetFiles(Path.Combine(testFolderName, "2"), "*.plate").Length);

            ValidatePyramid(testFolderName, tileLocator, 0, 0, 0);
            ValidatePyramid(testFolderName, tileLocator, 2, 0, 0);
            ValidatePyramid(testFolderName, tileLocator, 3, 1, 1);
            ValidatePyramid(testFolderName, tileLocator, 5, 6, 6);
        }