MapGIS Client for JavaScript之开源cesium快速扩展

开源cesium快速扩展

一、介绍

官方开源cesium库提供标准基础的三维GIS功能,实际项目应用中各类复杂情况如自定义参考系、自定义裁图方案、各类特殊参数、空间分析等均需开发者对开源库进行扩展。为解决此类问题MapGIS Client for JavaScript提供了基础接口、空间分析等各种扩展和优化,能够支持全空间的数据融合、大体量数据承载及渲染、空间数据三维查询和分析等能力。

本篇内容将介绍开源cesium如何使用MapGIS Client for JavaScript插件进行快速扩展。

二、开发步骤

1.下载

首先从cesium官方网站和MapGIS司马云官方网站分别下载cesiumMapGIS Client for JavaScript

软件下载地址
cesiumhttps://cesium.com/downloads/
MapGIS Client for JavaScripthttp://developpackage.oss-cn-hangzhou.aliyuncs.com/MapGIS10/
mapgis-client-for-javascript/mapgis-client-for-javascript-dist-v10.7.4.10.rar

2.拷贝插件

从mapgis-client-for-javascript-dist-v10.7.4.10\cdn\zondyclient路径下拷贝webclient-common.min.js和webclient-cesium-plugin.min.js两个js库。

在这里插入图片描述

从mapgis-client-for-javascript-dist-v10.7.4.10\css路径下拷贝style.css样式文件。
在这里插入图片描述

将下载的cesium库和MapGIS插件放在同一路径下即可进行开发。

在这里插入图片描述

3.初始化cesium球体

cesium原生接口可以正常使用,若需使用插件中的接口可参考MapGIS的开发示例API文档,其中开发示例标题中带有原生接口的示例代码可供参考。

以下为扩展后调用服务的关键代码,初始化球体和跳转均使用cesium原生接口,调用特殊参数服务的接口为MapGIS扩展接口。

      // 全局变量
      let viewer, wmtsLayer

       // MapGIS函数类
      const { WebMapTileServiceImageryProvider } = zondy.cesium

      // 定义WMTS图层服务的基地址
      const url = 'http://webclient.smaryun.com:8089/igs/rest/services/Tile/HuBei_4326/WMTSServer'

      // 添加WMTS图层
      async function addWMTSLayer() {
        // 参考API: http://webclient.smaryun.com/static/modules/cesium/api/cesium-mapgis/WebMapTileServiceImageryProvider.html
        const provider = await WebMapTileServiceImageryProvider.fromUrl(url)
        viewer.imageryLayers.addImageryProvider(provider)
      }

      // 飞到指定视角
      function flyTo() {
        // 跳转到指定范围
        viewer.camera.flyTo({
          destination: Cesium.Rectangle.fromDegrees(
            -2.778023144855979e-9,
            -89.99999999722198,
            179.99999999444395,
            90
          ),
          duration: 2
        })
      }

      //初始化球体
      function initViewer() {
        //初始化地图视图对象
        viewer = new Cesium.Viewer('mapgis-3d-viewer')
      }

 = zondy.cesium

      // 定义WMTS图层服务的基地址
      const url = 'http://webclient.smaryun.com:8089/igs/rest/services/Tile/HuBei_4326/WMTSServer'

      // 添加WMTS图层
      async function addWMTSLayer() {
        // 参考API: http://webclient.smaryun.com/static/modules/cesium/api/cesium-mapgis/WebMapTileServiceImageryProvider.html
        const provider = await WebMapTileServiceImageryProvider.fromUrl(url)
        viewer.imageryLayers.addImageryProvider(pro
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值