加载地图后,打开图层3禁用夹点旋转

时间:2015-01-15 21:13:19

标签: jquery openlayers-3

我想在我的应用程序中选择一个选项,允许在用户需要时禁用捏合旋转。

我有一张地图:

map_object = new ol.Map({
target: 'map',
controls: controls_list,
interactions: interactions_list,
overlays: [overlay],
layers: vector_layers,
view: view
});

您会注意到我在地图定义中以通常的方式定义了互动。我的interaction_list如下:

var interactions_list = ol.interaction.defaults({altShiftDragRotate:false, pinchRotate:true, dragPan:true}); 

如何在创建地图对象后禁用夹点旋转,以便在加载并显示地图后禁用地图旋转。

1 个答案:

答案 0 :(得分:3)

如果您使用的是OpenLayers v3.1.1,则可以通过在互动上调用setActive(true) / setActive(false)来启用/禁用互动。

首先,您需要在交互集合中找到PinchRotate互动:

var interactions = map.getInteractions().getArray();
var pinchRotateInteraction = interactions.filter(function(interaction) {
  return interaction instanceof ol.interaction.PinchRotate;
})[0];

然后,您可以根据需要启用和禁用交互:

pinchRotateInteraction.setActive(false);
pinchRotateInteraction.setActive(true);