2014-09-03 68 views
5

隱藏其他國家的地圖其他地區是否可以在標準leaflet.js地圖上將一個國家的「世界其他地方」變暗或隱藏? Mabye用某種「倒置的多邊形」覆蓋了國家的輪廓?任何代碼示例或鏈接將不勝感激。Dim/Hide leaflet.js

回答

6

擴大@ tmcw的答案...

的祕密是使用http://leafletjs.com/reference.html#polygon

您還可以創建一個多邊形描述的屬性來繪製多邊形通過傳遞陣列陣列 的孔,第一個陣列代表外部 環,而其餘的代表內部的孔。

第一個多邊形將是一個與地圖本身一樣大的矩形,該洞將是您想突出顯示的國家。

L.polygon([outerBoundsLatLngs, latLngs]); 

這裏是一個工作示例:http://jsfiddle.net/FranceImage/1yaqtx9u/

+0

平移時左右,因爲它似乎等待瓷磚掩蓋他們之前加載的面具效果降低了。有沒有解決的辦法? – Titan 2014-10-09 09:19:32

+0

我剛剛注意到剪裁發生在L.Mask技術(我正在接受的上面)中,但是沒有使用leaflet-maskcanvas(請查看演示http://domoritz.de/vbb-coverage/)。我會盡力瞭解他們是如何做到的。 – YaFred 2014-10-10 12:29:37