Class: IGSFeatureLayerUtil

IGSFeatureLayerUtil

new IGSFeatureLayerUtil()

view/utils/IGSFeatureLayerUtil.js, line 14

支持如下方法:
[1、将单个要素或要素集合转换为Cesium原生Primitive的方法]

IGSFeature图层的工具类

Methods

IGSFeatureLayerUtil.addIGSFeatureLayerForGrid(layerView){*}

view/utils/IGSFeatureLayerUtil.js, line 80
Name Type Description
layerView *
Returns:
Type Description
*

IGSFeatureLayerUtil.addIGSFeatureLayerForServer(layerView){*}

view/utils/IGSFeatureLayerUtil.js, line 62
Name Type Description
layerView *
Returns:
Type Description
*

IGSFeatureLayerUtil.toPrimitive(feature){Array}

view/utils/IGSFeatureLayerUtil.js, line 53

将单个要素或要素集合转换为Cesium原生Primitive的方法

Name Type Description
feature Feature | Array.<Feature>

单个要素或要素集合

Returns:
Type Description
Array 转换后的Primitive数组
Example
const url = 'http://webclient.smaryun.com:8089/igs/rest/services/Map/湖北省4547/FeatureServer'
const addIGSFeature = async (url) => {
  const renderer = new UniqueValueRenderer({
    //...
  })
  // 创建IGSFeatureLayer对象
  const igsFeatureLayer = new IGSFeatureLayer({
    url,
  })
  // 请求获取要素集
  const featureSet = await igsFeatureLayer.queryFeatures()
  const features = featureSet.features
  // 为要素集设置renderer
  RendererUtil.updateRenderer(features, renderer)
  // 将要素集转换为原生Primitive对象
  const primitives = IGSFeatureLayerUtil.toPrimitive(features, {
    viewer
  })
  // 将Primitive对象添加到场景中
  for (let i = 0; i < primitives.length; i++) {
    viewer.scene.primitives.add(primitives[i])
  }
}
addIGSFeature(url)