久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

    <legend id='4LAUG'><style id='4LAUG'><dir id='4LAUG'><q id='4LAUG'></q></dir></style></legend>

    <tfoot id='4LAUG'></tfoot>
  1. <i id='4LAUG'><tr id='4LAUG'><dt id='4LAUG'><q id='4LAUG'><span id='4LAUG'><b id='4LAUG'><form id='4LAUG'><ins id='4LAUG'></ins><ul id='4LAUG'></ul><sub id='4LAUG'></sub></form><legend id='4LAUG'></legend><bdo id='4LAUG'><pre id='4LAUG'><center id='4LAUG'></center></pre></bdo></b><th id='4LAUG'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='4LAUG'><tfoot id='4LAUG'></tfoot><dl id='4LAUG'><fieldset id='4LAUG'></fieldset></dl></div>

    <small id='4LAUG'></small><noframes id='4LAUG'>

    • <bdo id='4LAUG'></bdo><ul id='4LAUG'></ul>

      使用 EPSG:25832 投影在 Leaflet 中垂直對齊 TMS 瓷磚

      Vertical alignment of TMS tiles in Leaflet using EPSG:25832 projection(使用 EPSG:25832 投影在 Leaflet 中垂直對齊 TMS 瓷磚)
      <legend id='5zLiM'><style id='5zLiM'><dir id='5zLiM'><q id='5zLiM'></q></dir></style></legend>

          • <bdo id='5zLiM'></bdo><ul id='5zLiM'></ul>
              <tbody id='5zLiM'></tbody>
          • <i id='5zLiM'><tr id='5zLiM'><dt id='5zLiM'><q id='5zLiM'><span id='5zLiM'><b id='5zLiM'><form id='5zLiM'><ins id='5zLiM'></ins><ul id='5zLiM'></ul><sub id='5zLiM'></sub></form><legend id='5zLiM'></legend><bdo id='5zLiM'><pre id='5zLiM'><center id='5zLiM'></center></pre></bdo></b><th id='5zLiM'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='5zLiM'><tfoot id='5zLiM'></tfoot><dl id='5zLiM'><fieldset id='5zLiM'></fieldset></dl></div>

            <small id='5zLiM'></small><noframes id='5zLiM'>

                <tfoot id='5zLiM'></tfoot>
              1. 本文介紹了使用 EPSG:25832 投影在 Leaflet 中垂直對齊 TMS 瓷磚的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                問題描述

                我正在使用帶有 Proj4Leaflet 的 Leaflet 來處理 25832 中的圖塊.該應用程序非常簡單:我正在嘗試將 EPSG:25832 中的圖塊疊加到全尺寸底圖上.我已經從 tilemap 元信息中復制了各個分辨率和來源.我面臨的問題是地圖沒有對齊,一旦我放大圖塊,就沒有按正確的順序放置.我很感激這里的任何支持(順便說一下,

                解決方案

                這歸結為 TMS 瓦片是倒置的(向北時它會變高,而默認的 TileLayers 會在向南時 Y 坐標變大).

                看看 處理此特定功能的傳單代碼將闡明該問題:

                 if (this._map && !this._map.options.crs.infinite) {var reverseY = this._globalTileRange.max.y - coords.y;如果(this.options.tms){數據['y'] = 倒置 Y;}數據['-y'] = 倒置 Y;}

                在此處計算圖塊的正確 Y 坐標有兩點至關重要:

                • CRS 必須是有限的(它必須有邊界)
                • 必須有一個有限的全局圖塊范圍(在 Leaflet 中為 最終由 CRS 邊界定義,而不是 TileLayer 邊界)

                長話短說,您的 CRS 應該用已知的界限來定義.對于這種特殊情況,請從 TMS 功能文檔中獲取信息...

                ...在定義Leaflet CRS時變成了一個L.Bounds定義,比如...

                //定義 CRSvar rs25832 = 新 L.Proj.CRS('EPSG:25832',proj4rs25832def,{來源:[273211.2532533697, 6111822.37943825],決議:決議,界限:[[273211.2532533697, 5200000],[961083.6232988155, 6111822.37943825]]});

                東西應該可以正常工作(無需將 CRS 傳遞給 tilelayer,因為它們都會使用地圖),如 工作示例.

                I am using Leaflet with Proj4Leaflet to work with tiles in 25832. The application is fairly simple: I am trying to overlay tiles in EPSG:25832 onto a omniscale basemap. I have copied the individual resolutions and origin from the tilemap meta information. The problem I am facing is that the map is not aligned and once I zoom in the tiles are not placed in the correct order. I'd appreciate any kind of support here (by the way, this is a working example which is using openlayers).

                I guess I am doing something wrong here:

                // Set resolutions
                var resolutions = [156367.7919628329,78183.89598141646,39091.94799070823,19545.973995354114,9772.986997677057,4886.4934988385285,2443.2467494192642,1221.6233747096321,610.8116873548161,305.40584367740803,152.70292183870401,76.35146091935201,38.175730459676004,19.087865229838002,9.543932614919001,4.7719663074595005,2.3859831537297502,1.1929915768648751];
                
                // Define CRS
                var rs25832 = new L.Proj.CRS(
                    'EPSG:25832',
                    proj4rs25832def, 
                    {
                        origin: [ 273211.2532533697, 6111822.37943825 ],
                        resolutions: resolutions
                    }
                );
                

                ...using the tiles information from https://mapproxy.bba.atenekom.eu/tms/1.0.0/privat_alle_50_mbit/germany .

                Afterwards I add a tile layer

                var url = 'https://mapproxy.bba.atenekom.eu/tms/1.0.0/privat_alle_50_mbit/germany/{z}/{x}/{y}.png';  
                
                var tileLayer = L.tileLayer(
                    url, 
                    {
                        tms: true,
                        crs: rs25832,
                        continuousWorld: true,
                        maxZoom: resolutions.length
                    }
                );
                

                And add them to the map..

                // Setup map
                var map = L.map('map', {
                    crs: rs25832,
                    center: [ 50.8805, 7.3389 ],
                    zoom:5,
                    maxZoom: resolutions.length,
                    layers: [ baseWms, tileLayer ]
                });
                

                The bare minimum of code can be found here: https://jsfiddle.net/6gcam7w5/8/

                解決方案

                This boils down to how the Y coordinate of TMS tiles is inverted (it becomes higher when going north, as opposed to default TileLayers, in which the Y coordinate becomes larger when going south).

                Having a look on the Leaflet code that takes care of this specific feature will shed some light on the issue:

                    if (this._map && !this._map.options.crs.infinite) {
                        var invertedY = this._globalTileRange.max.y - coords.y;
                        if (this.options.tms) {
                            data['y'] = invertedY;
                        }
                        data['-y'] = invertedY;
                    }
                

                There are two things critical to calculating the right Y coordinate for your tiles here:

                • The CRS must be finite (it must have bounds)
                • There must be a finite global tile range (which in Leaflet is ultimately defined by the CRS bounds and not the TileLayer bounds)

                Long story short, your CRS should be defined with known bounds. For this particular case, taking information from the TMS capabilities document...

                <BoundingBox minx="273211.2532533697" miny="5200000.0" maxx="961083.6232988155" maxy="6111822.37943825"/>
                

                ...and turned into a L.Bounds definition when defining the Leaflet CRS, like...

                // Define CRS
                var rs25832 = new L.Proj.CRS(
                    'EPSG:25832',
                    proj4rs25832def, 
                    {
                        origin: [ 273211.2532533697, 6111822.37943825 ],
                        resolutions: resolutions,
                        bounds: [[273211.2532533697, 5200000],[961083.6232988155, 6111822.37943825]]
                    }
                );
                

                Stuff should just work (with no need to pass the CRS to the tilelayers, since they will all use the map's), as in this working example.

                這篇關于使用 EPSG:25832 投影在 Leaflet 中垂直對齊 TMS 瓷磚的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                相關文檔推薦

                Check if a polygon point is inside another in leaflet(檢查一個多邊形點是否在傳單中的另一個內部)
                Changing leaflet markercluster icon color, inheriting the rest of the default CSS properties(更改傳單標記群集圖標顏色,繼承其余默認 CSS 屬性)
                Trigger click on leaflet marker(觸發點擊傳單標記)
                How can I change the default loading tile color in LeafletJS?(如何更改 LeafletJS 中的默認加載磁貼顏色?)
                Add external geojson to leaflet layer(將外部geojson添加到傳單層)
                Adding Leaflet layer control to sidebar(將 Leaflet 圖層控件添加到側邊欄)
                <legend id='eDGDB'><style id='eDGDB'><dir id='eDGDB'><q id='eDGDB'></q></dir></style></legend>

                  1. <tfoot id='eDGDB'></tfoot>

                      <i id='eDGDB'><tr id='eDGDB'><dt id='eDGDB'><q id='eDGDB'><span id='eDGDB'><b id='eDGDB'><form id='eDGDB'><ins id='eDGDB'></ins><ul id='eDGDB'></ul><sub id='eDGDB'></sub></form><legend id='eDGDB'></legend><bdo id='eDGDB'><pre id='eDGDB'><center id='eDGDB'></center></pre></bdo></b><th id='eDGDB'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='eDGDB'><tfoot id='eDGDB'></tfoot><dl id='eDGDB'><fieldset id='eDGDB'></fieldset></dl></div>
                        <tbody id='eDGDB'></tbody>
                        • <bdo id='eDGDB'></bdo><ul id='eDGDB'></ul>

                          <small id='eDGDB'></small><noframes id='eDGDB'>

                          主站蜘蛛池模板: 成人欧美一区二区三区黑人孕妇 | 亚洲综合在线视频 | 欧美男人天堂 | 亚洲欧美中文日韩在线v日本 | 国产成人精品久久二区二区91 | 91精品国产综合久久久久 | 国产精品亚洲一区二区三区在线 | 国产伦精品一区二区三区高清 | 亚洲欧美综合精品另类天天更新 | 精品欧美乱码久久久久久1区2区 | 日韩亚洲欧美综合 | 99久久精品免费看国产四区 | 亚洲+变态+欧美+另类+精品 | a级片在线观看 | 自拍偷拍一区二区三区 | av一区二区三区 | 欧美在线精品一区 | 日日碰碰 | 亚洲成人一区二区 | 91精品国产乱码久久久久久 | 国产精品欧美一区二区三区 | 色综合一区二区三区 | 毛片久久久 | 亚洲精品国产综合区久久久久久久 | 欧美情趣视频 | a黄视频 | 91一区二区 | 97超在线视频 | 欧美一级久久久猛烈a大片 日韩av免费在线观看 | 国产极品粉嫩美女呻吟在线看人 | 亚洲欧美一区二区三区国产精品 | 久久久久久看片 | 欧美中文字幕一区二区三区亚洲 | 91九色在线观看 | 91原创视频在线观看 | 黄色精品 | 国产一区二区欧美 | 精品视频一区二区三区四区 | 久久成人精品一区二区三区 | 毛片一级网站 | 精品精品|