首页 > 其他 > 详细

超图iServer图层过滤渲染服务

时间:2020-12-15 15:10:28      阅读:38      评论:0      收藏:0      [点我收藏+]

使用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]}) }) ...... },

 

超图iServer图层过滤渲染服务

原文:https://www.cnblogs.com/yangzhengier/p/14137309.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!