Mais

Arrastar enquanto segura a tecla ctrl (control) não funciona no OpenLayers3?

Arrastar enquanto segura a tecla ctrl (control) não funciona no OpenLayers3?


Quando eu seguro o Ctrl (control) no meu teclado e tento deslocar qualquer mapa OL3 com o meu mouse, o panorama não acontece.

Por causa das necessidades específicas do meu aplicativo, preciso deslocar para funcionar quando a tecla ctrl é mantida pressionada, assim como quando Ctrl não é pressionado.

Não consegui ver em nenhum lugar na documentação OL3 sobre ctrl-drag sendo tratado de maneira especial, então não sei onde procurar para desabilitar esse comportamento.

Alguma ideia?


Fiz alguns testes e o comportamento não é exatamente o mesmo, mas funciona. Aqui está um êmbolo.

É um clone de ol.interaction.DragPan.handleDragEvent_

É feito emponteiro para moverevento:

map.on ('ponteiromove', função (evt) {if (evt.dragging && evt.originalEvent.ctrlKey) {var centroid = [evt.originalEvent.clientX, evt.originalEvent.clientY]; var lastCentroid = interações.getArray ( ) [dragpan_index] .lastCentroid; if (lastCentroid) {var deltaX = lastCentroid [0] - centróide [0]; var deltaY = centroid [1] - lastCentroid [1]; var center = [deltaX, deltaY]; var view = map.getView (); ol.coordinate.scale (center, view.getResolution ()); ol.coordinate.rotate (center, view.getRotation ()); ol.coordinate.add (center, view.getCenter ()) ; center = view.constrainCenter (center); map.render (); view.setCenter (center);} transactions.getArray () [dragpan_index] .lastCentroid = centroid;}});