派生自 wuyushui/SewerAndRainNetwork

chenyabin
2021-05-14 2cbc4c3ce921f22ae2fd498098d46dbda06c0452
src/utils/utils.js
@@ -24,6 +24,43 @@
}
/**
 * 脉冲效果
 */
export function pulseEffect (xy) {
  let times = 5
  const colors = ['#98FB98', '#ff0000']
  // 插件 效果实现
  var pulsingIcon = window.L.icon.pulse({
    iconSize: [20, 20],
    color: colors[0],
    fillColor: ''
  })
  var picGroupMarker = window.L.marker(xy, { icon: pulsingIcon }).addTo(window.map)
  // 定时
  var timeInterval = setInterval(() => {
    if (times > 0) {
      times--
    } else {
      clearInterval(timeInterval)
      picGroupMarker.remove()
    }
  }, 1000)
}
/**
 * 设置弹窗平移位置
 * @param pos
 * @param value
 */
export function setPanTo (pos, value) {
  var position = pos
  position = window.map.latLngToLayerPoint(position)
  position.y += value
  position = window.map.layerPointToLatLng(position)
  window.map.flyTo(position)
}
/**
 * 复制对象
 * @param obj
 * @returns {{}}
@@ -56,4 +93,27 @@
  return o
}
/**
 *
 * 设置index,线在最下面,点在上面
 * @param layerGroup 图层组
 */
export function setZIndex (layer) {
  if (Array.isArray(layer)) {
    for (var i = 0; i < layer.length; i++) {
      setZIndex(layer[i])
    }
  } else {
    if (layer.getLayers) {
      setZIndex(layer.getLayers())
    } else {
      if (layer.feature && (layer.feature.geometry.type === 'LineString' || layer.feature.geometry.type === 'MultiLineString')) {
        layer.bringToBack && layer.bringToBack()
      } else {
        layer.bringToFront && layer.bringToFront()
      }
    }
  }
}
export default clone