2014-09-03 59 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