2013-08-27 23 views
2

我有一個應用程序顯示運行在Openlayers - jsfiddle working sample上的EPSG:3414地圖。在宣傳單上使用自定義地圖投影

我想在Leaflet - jsfiddle non-working上執行相同的操作,它不起作用,因爲我可能已經遺漏了一些東西或者可能有一些概念錯誤。

不幸的是,我很不熟悉,並且正在研究如何使這個工作。

任何幫助將受到歡迎。謝謝!

更新:

  1. 地圖是使用ZYX和SVY21投影ESRI型):
  2. 沒有更新 這裏
  3. 更新的代碼(JS小提琴)
  4. 地圖XY不會在0/0開始,他們是一些其他的數字,所以它變得越來越複雜,我不得不爲每個級別做一些神奇的數字抵消,這有點作用,但不是理想的,因爲位置不準確,接近但不夠準確。

單張樣本:

var proj = new L.Proj.CRS.TMS('EPSG:3414', "+proj=tmerc +lat_0=1.366666666666667 +lon_0=103.8333333333333 +k=1 +x_0=28001.642 +y_0=38744.572 +ellps=WGS84 +units=m +no_defs", 
    [4257.9355, 11470.3186, 64359.3062, 49067.5413], 
    { 
     resolutions:[76.4372195411057,38.2186097705529,19.1093048852764,9.55465244263822,4.77732622131911,2.38866311065955,1.19433155532978,0.597165777664889,0.298450596901194] 
    } 
); 

var map = L.map('my_map', { 
    crs: proj, 
    continuousWorld: true, 
    worldCopyJump: false 
}); 

map.addLayer(new L.Proj.TileLayer.TMS('http://{s}.onemap.sg/ArcGIS/rest/services/basemap/MapServer/tile/{z}/{y}/{x}', proj, { 
    subdomains: ['t1', 't2'], 
    tms: true, 
    continuousWorld: true 
})); 

回答

0

請問這個例子

http://esri.github.io/esri-leaflet/examples/non-mercator-projection.html

或這個例子幫助

http://blog.thematicmapping.org/2012/07/using-custom-projections-with-tilecache.html

我將在示例中使用firefox中的firebug,然後查看控制檯中是否有錯誤消息。

另外,我會嘗試它在一個直的網頁,然後我把它放在JS小提琴。只有一件事可能會干擾。

+0

嗨,感謝您的指針,我剛剛開始查看傳單,並將結帳的例子。我在onemap網站上發現了一些關於地圖規格的更多信息,並會在稍後添加鏈接。 一起使用傳單和Bootstrap。 順便說一句,我正在撕掉我的頭髮在Leaflet的標記標籤上。他們爲什麼離開這麼重要的東西。這些脈衝似乎都不太好。 –