2017-06-12 61 views
0

我正在使用播放插件,並在圖像疊加層上使用它。單張播放位置標記

https://github.com/hallahan/LeafletPlayback

我需要放置標誌之前縮放平面地圖。使用插件將標記放置在地圖之外的某個地方。

我能夠解決GPS跟蹤問題,我已經寫了一個函數來縮放地圖並將標記放置在layer屬性的pointToLayer方法中。

我也想爲標記做同樣的事情。任何幫助表示讚賞。

const playbackOptions = { 

    playControl: true, 
    dateControl: true, 
    orientIcons: true, 
    fadeMarkersWhenStale: true, 
     // layer and marker options 
    layer: { 
     pointToLayer(featureData, latlng) { 
     const { lat, lng } = latlng; 
     let result = {}; 

     if (featureData && featureData.properties && featureData.properties.path_options) { 
      result = featureData.properties.path_options; 
     } 

     if (!result.radius) { 
      result.radius = 5; 
     } 

     const scaleX = width/details.width; 
     const scaleY = height/details.length; 
     const m = { 
      x: lat * scaleX, 
      y: lng * scaleY, 
     }; 
     const iconCls = 'asset-icon'; 
     const item = L.marker(self.map.unproject([m.x, m.y], self.map.getMaxZoom()), { 
      icon: makeMarker(iconCls, 0), 
      opacity: 0.9, 
      type: 'asset', 
      lat, 
      lng, 
     }); 
     item.bindTooltip(`<p>${lat}, ${lng}`, { className: 'asset-label', offset: [0, 0] }); 

     return item; 
     } 
    }, 

    marker: { 
     getPopup(featureData) { 
     let result = ''; 

     if (featureData && featureData.properties && featureData.properties.title) { 
      result = featureData.properties.title; 
     } 

     return result; 
     } 
    } 

    }; 

enter image description here

回答

0

如果您獲得實際的GPS座標,它很可能是,而不是試圖與地理撥弄容易真正做相反,即地理參考您的影像重疊一次爲好,您嘗試相對於圖像顯示的每個功能的座標。