MapGIS数字孪生平台对接IGServer要素服务

前言

MapGIS IGServer是一款专业GIS服务器,提供丰富的地图服务、数据服务、空间分析服务、三维服务、三维可视化服务等。MapGIS数字孪生平台是一款基于MapGIS IGServer的数字孪生应用开发平台,提供丰富的数字孪生应用开发工具和组件,帮助用户快速构建数字孪生应用。在MapGIS数字孪生平台中调用IGServer提供的服务,可以实现数字孪生应用的数据交互、空间分析等功能。本文以MapGIS数字孪生平台对接IGServer要素服务为例,介绍如何使用MapGIS数字孪生平台调用IGServer要素服务。

IGServer要素服务简介

要素服务是IGServer提供的一种数据服务,要素服务提供了一系列的接口,包括查询要素、编辑要素、删除要素、新增要素等。

MapGIS数字孪生平台对接IGServer要素服务

对接有两种方案:

  1. 查询IGServer的API文档,根据文档构造对应的请求,通过MapGIS数字孪生平台的HTTP请求组件发送请求,获取返回结果。
  2. 使用MapGIS Client for Js中的conmmon层提供的与IGServer交互的类,直接调用IGServer的接口。
    本文选择第二种。

下载MapGIS Client for Js

npm install @mapgis/webclient-common

下载完成后,可以在node_modules\@mapgis\webclient-common\dist中找到对应的js文件。其中的es5文件夹中是es5版本的js文件,webclient-common-es6.min.js是es6版本的,可以根据项目需求选择对应的版本。

调用接口

可以参考文档,其中的服务模块(Service) 提供GIS服务接口的封装,方便GIS服务接口的调用。
以下是查询要素的示例代码:

  async function queryFeatures() {
    const featureSerer = new zondy.service.FeatureServer(
      { url: 'http://localhost:8089/igs/rest/services/地铁数据/FeatureServer', }
    );
    const data = await featureSerer.queryFeatures({
      layerId: '5',
      // resultRecordCount: 20 // 返回20条数据
    })
    if (data.succeed) {
      const { features } = data.data
      features.forEach(feature => {
        const { attributes, geometry } = feature
        const x = geometry.coordinates[0]
        const y = geometry.coordinates[1]
        addLabel(attributes.NAME, new MapGISCloudRender.Cartesian3(x, y, 50.0))
      }
      )
    }
  }

查询结果用于添加二维注记,代码如下:

  // 添加二维注记
  function addLabel(text, position) {
    const label = new MapGISCloudRender.MapGISLabel(position, {
      text,
      labelStyle: 'YiYuan',
      isAutoFly: true,
    });
    zdScene.addCovering(label);
  }

在这里插入图片描述

总结

本文介绍了如何使用MapGIS数字孪生平台对接IGServer要素服务,通过调用MapGIS Client for Js中的类,可以直接调用IGServer的接口,实现数字孪生应用的数据交互、空间分析等功能。如果需要做其他空间分析、目录服务等等,也可查询webclient-common的文档,根据文档调用对应的接口即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值