代码之家  ›  专栏  ›  技术社区  ›  Pim92

如何在使用Openlayers进行修改之前减慢鼠标速度

  •  0
  • Pim92  · 技术社区  · 6 年前

    我有一个带有可拖动标记的地图(实际上是ol.style.icon)。 有一个奇怪的问题: 如果我试着移动标记,就像试着卷进一条马林鱼,但是在放大/缩小或第一次拖动(clic-tight然后clic-release)之后,标记自然会变慢。 我试着和皮克斯托伦斯玩,但没什么不同。 为什么以及如何立即放慢这个速度?

    var mark_style = new ol.style.Style({
        image: new ol.style.Icon({
        anchor: [.5, 48],
        anchorXUnits: 'fraction',
        anchorYUnits: 'pixels',
        opacity: 0.75,
        src: mark_path
     })
    });
    
    var iconFeature = new ol.Feature(position);
    iconFeature.set('style', mark_style);
    
    var vectorLayer = new ol.layer.Vector({
        style: function(feature) {
            return feature.get('style');
        },
        source: new ol.source.Vector({features: [iconFeature]})
    })
    var dragInteraction = new ol.interaction.Modify({
      features: new ol.Collection([iconFeature]),
      style: null,
      pixelTolerance: 10//?
    });
    
    dragInteraction.on('modifyend',function(f){
        var coordf = f.features.getArray()[0].getGeometry().getCoordinates();
        ol.View-view.setCenter(coordf);
        GMapWidget.prototype.A = coordf;
        GMapWidget.prototype.updatePosition(position);
        },iconFeature);
    
      map.addInteraction(dragInteraction);
    

    经过多次尝试,这似乎是一个“修改”问题:鼠标在第一次DragInteraction结束之前速度很快。请问怎么办?使用ModifyStart,不会再加快速度,但是,如何在第一次CLIC之后访问所有鼠标位置?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Pim92    6 年前

    嗯,似乎可以 dragInteraction.on(['modifyend', 'modifystart'] 我是个初学者,我不知道为什么我的代码现在可以了。经过多次尝试,我终于成功了。