超图iServer图层过滤渲染服务

使用iServer作为服务端,对已发出的超图rest服务如何做过滤展示,使用的是Vue

1、需要引入的依赖

  import {LayerStatus} from "@supermap/iclient-common/iServer/LayerStatus"
  import {SetLayerStatusService} from '@supermap/iclient-common/iServer/SetLayerStatusService'
  import {SetLayerStatusParameters} from '@supermap/iclient-common/iServer/SetLayerStatusParameters'

2、过滤方法

    /**
       * 图层过滤
       * @param _serviceUrl  超图REST服务地址
       * @param _layerName   要过滤的图层名字,一般叫  xxxx@xxxxx
       * @param _displayFilter  过滤条件  字符串类型 一般是比如'id>100 and (area >1000 or area <500)'
       */
      filterLayerContent(_serviceUrl, _layerName, _displayFilter) {
        let layerStatus = new LayerStatus({
          layerName: _layerName,
          displayFilter: _displayFilter
        })
        let setLayerStatusParameters = new SetLayerStatusParameters({
          layerStatusList: [layerStatus]
        })
        let setLayerStatusService = new SetLayerStatusService(_serviceUrl, {
          eventListeners: {
            "processCompleted": this.setLayerCompleted,
            "processFailed": this.setLayerFailed
          }
        })
        setLayerStatusService.processAsync(setLayerStatusParameters)
      },
setLayerCompleted(_res) { let newSource = new TileSuperMapRest({ url: this.templateBingdingInfo.service.url, wrapX: true, layersID: _res.result.newResourceID, tileGrid: createXYZ({extent: [-180, -90, 180, 90]}) }) ...... },
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值