2015-02-11 211 views
0

我使用的是MapBox,希望能夠從ArcGis WMS服務中提供一些數據。它似乎工作正常,但預測都是錯誤的。 Mapbox接收服務的URL並在發送給WMS服務之前,根據當前的地圖視圖添加查詢字符串參數。它增加了BBOX = 1115369.116737292,9392582.035682455,1134936.995978297,9412149.914923461 時,它應該是這樣的: BBOX = 260427.3772,7137390.031000003,261695.991099999,7138611.94860001在ArcGis中使用MapBox wms

我寫了覆蓋WMS Mapbox功能,在那裏我可以一個功能做出調整,所以我需要的是正確的算法。它必須考慮縮放。

回答

0

因爲我能夠重寫Mapbox函數,所以我可以添加額外的查詢字符串參數。快速瀏覽一下ArcGis Export Map API(http://resources.esri.com/help/9.3/arcgisserver/apis/rest/export.html),我發現bboxSR可以做到這一點。從API幫助頁面:

bboxSR:在BBOX的空間參考的知名ID。如果未指定bboxSR,則認爲bbox位於地圖的空間參考中。

我能找到投射我是後下看它的知名ID(WKID): https://developers.arcgis.com/javascript/jshelp/pcs.html。 3857是Mapbox使用的投影的wkid。 從那裏我只是說

bboxSR=3857 

的查詢字符串和它的工作!

0

您是否嘗試過在L.TileLayer.WMS選項中設置正確的CRS?包括CRS的是L.CRS.EPSG3857(默認),L.CRS.EPSG4326和L.CRS.EPSG3395。如果你需要的不在那裏,你可以使用Proj4js plugin

+0

謝謝你的好意,mapbox沒有支持我所需要的投影。我看着Proj4js,它似乎可以做到這一點,但我最終在另一端修復了它(通過使用bboxSR QS參數指定我想在ArcGis服務器上使用的極端投影)。 – Johan 2015-02-11 14:15:37

+0

不用了,謝謝,您隨時歡迎。良好的解決方案,使您無需在客戶端加載proj4js依賴性。 – iH8 2015-02-11 14:23:32