gpt4 book ai didi

openlayers - 开放层 : Two finger movement (dragPan)

转载 作者:行者123 更新时间:2023-12-04 21:34:11 26 4
gpt4 key购买 nike

谷歌最近在那里重新设计了移动行为 map 。现在在移动设备上,您可以用两根手指移动 map 。 (请参阅手机上的 map-simple 示例,而不是任何浏览器模拟器!)。

我想在 openlayer 中实现相同的功能。检测移动设备(例如 WURFL ),禁用 dragPan 不是问题,但我怎么能写我自己的 ol.interaction.Interaction 用两个手指工作?

我查看了 doku并没有找到任何例子,从哪里开始。

最佳答案

拖动交互通常带有“条件”选项。您提供一个函数,该函数采用一个参数( ol.MapBrowserEvent )并返回一个 bool 值,指示是否应应用交互。

ol.MapBrowserEvent 包装原始浏览器事件,这意味着您可以在其上查找 touches 数组并检查它的长度是否为 2。

<script>
var map = new ol.Map({
interactions: [
new ol.interaction.DragPan({

// This comment marks the beginning of the code of interest.

condition: function(olBrowserEvent) {
if (olBrowserEvent.originalEvent.touches)
return olBrowserEvent.originalEvent.touches.length === 2;
return false;
}

// This comment marks the end.

})
],
layers: [
// Your layers.
],
target: 'map',
view: new ol.View({
center: [-33519607, 5616436],
rotation: -Math.PI / 8,
zoom: 8
})
});
</script>

关于openlayers - 开放层 : Two finger movement (dragPan),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42769202/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com