类名 view/utils/support/rasterLayerUtil.js
/**
 * 设置图层可见性
 * @param {LayerView} layerView 图层视图对象
 * */
function setVisible(layerView) {
  layerView.innerView.setLayoutProperty(
    layerView.innerLayer.id,
    'visibility',
    layerView.layer.visible ? 'visible' : 'none'
  )
}

/**
 * 删除图层
 * @param {LayerView} layerView 图层视图对象
 * */
function removeLayer(layerView) {
  layerView.innerView.removeLayer(layerView.innerLayer.id)
}

/**
 * 设置图层透明度
 * @param {LayerView} layerView 图层视图对象
 * */
function setOpacity(layerView) {
  layerView.innerView.setPaintProperty(
    layerView.innerLayer.id,
    'raster-opacity',
    layerView.layer.opacity
  )
}

/**
 * 获取瓦片图层的数据源
 * @param {String} url 完整的出图链接地址
 * @param {Layer} tileSize 瓦片大小
 * @return {Object} 数据源构造参数
 * */
function getRasterSource(url, tileSize) {
  return {
    type: 'raster',
    tiles: [url],
    tileSize
  }
}

/**
 * 获取瓦片图层的初始化参数
 * @param {String} layerID 图层id
 * @param {String} sourceID 图层关联的数据源id
 * @param {Layer} layer common的layer对象
 * @param {LayerView} layerView 图层视图对象
 * @return {Object} 图层构造参数
 * */
function getRasterLayer(layerID, sourceID, layer, layerView) {
  return {
    id: layerID,
    type: 'raster',
    source: sourceID,
    // 初始化时设置图层透明度
    paint: {
      'raster-opacity': layer.opacity
    },
    // 初始化时设置图层可见性
    layout: {
      visibility: layerView._getLayerViewVisible() ? 'visible' : 'none'
    }
  }
}

export { setVisible, removeLayer, setOpacity, getRasterSource, getRasterLayer }
构造函数
成员变量
方法
事件