Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在传单v0.8-dev顶部添加遮罩覆盖层_Javascript_Canvas_Dictionary_Leaflet_Mask - Fatal编程技术网

Javascript 在传单v0.8-dev顶部添加遮罩覆盖层

Javascript 在传单v0.8-dev顶部添加遮罩覆盖层,javascript,canvas,dictionary,leaflet,mask,Javascript,Canvas,Dictionary,Leaflet,Mask,我正在尝试使用传单0.8创建一个圆形蒙面覆盖,该传单位于用户当前位置上方,半径为1000米。基本上使地图在用户周围可见(作为一个圆圈),并在1000米以外变灰 模型: 当用户在地图上放大/缩小时,圆圈应相应调整大小 我试过使用,这是一个用于传单的插件,看起来它可以完全满足我的需要,不幸的是,在传单0.8-dev中完成了所有重构,这个插件不兼容 是否有人能够成功地使用传单0.8实现此效果 我在想一种很有技巧的方法,就是使用turp.js获取地图的当前中心点(map.getCenter()),用t

我正在尝试使用传单0.8创建一个圆形蒙面覆盖,该传单位于用户当前位置上方,半径为1000米。基本上使地图在用户周围可见(作为一个圆圈),并在1000米以外变灰

模型:

当用户在地图上放大/缩小时,圆圈应相应调整大小

我试过使用,这是一个用于传单的插件,看起来它可以完全满足我的需要,不幸的是,在传单0.8-dev中完成了所有重构,这个插件不兼容


是否有人能够成功地使用传单0.8实现此效果

我在想一种很有技巧的方法,就是使用turp.js获取地图的当前中心点(
map.getCenter()
),用turp将其缓冲1000米,获取结果,然后获取地图视口的当前边界(
map.getBounds()
),并在其上使用turp
擦除。然后在地图上绘制生成的多边形(这就是差异),然后在任何移动事件中更新该多边形


谢谢@snkashis,我对turf.js不太熟悉,但从您提供的链接来看,这可能会奏效。我唯一担心的是,我的应用程序是一个移动应用程序,而Turp.js库看起来很重。很酷。请注意,你可以要求与browserify一起使用的东西。