コード例 #1
0
 /// <summary>
 /// For DAP 11 and later servers, switch to using the tile interface, updating the texture
 /// info appropriately.
 /// </summary>
 private void SwitchToUseTiles()
 {
     if (m_oServer.MajorVersion >= 11 && m_hDataSet.Type.Equals("ArcGIS", StringComparison.InvariantCultureIgnoreCase))
     {
         m_iTextureSizePixels        = DAP_TILE_SIZE;
         m_dLevelZeroTileSizeDegrees = DAP_TILE_LZTS;
         m_iLevels = DappleUtils.TileLevels(m_oServer.Command, m_hDataSet);
     }
 }
コード例 #2
0
        private QuadTileSet GetQuadTileSet()
        {
            if (m_layer == null)
            {
                SwitchToUseTiles();

                string strCachePath = GetCachePath();
                System.IO.Directory.CreateDirectory(strCachePath);

                // Determine the needed levels (function of tile size and resolution if available)
                // Shared code in DappleUtils of dapxmlclient
                try
                {
                    if (m_iLevels == 0)
                    {
                        m_iLevels = DappleUtils.Levels(m_oServer.Command, m_hDataSet);
                    }
                }
                catch
                {
                    m_iLevels = 15;
                }

                ImageStore[] imageStores = new ImageStore[1];
                imageStores[0] = new DAPImageStore(m_hDataSet, m_oServer)
                {
                    DataDirectory            = null,
                    LevelZeroTileSizeDegrees = LevelZeroTileSize,
                    LevelCount        = m_iLevels,
                    ImageExtension    = ".png",
                    CacheDirectory    = strCachePath,
                    TextureSizePixels = m_iTextureSizePixels
                };

                m_layer = new QuadTileSet(m_hDataSet.Title, m_oWorldWindow.CurrentWorld, 0, m_hDataSet.Boundary.MaxY, m_hDataSet.Boundary.MinY,
                                          m_hDataSet.Boundary.MinX, m_hDataSet.Boundary.MaxX, true, imageStores)
                {
                    AlwaysRenderBaseTiles = true,
                    IsOn    = m_IsOn,
                    Opacity = m_bOpacity
                };
            }
            return(m_layer);
        }