前言

 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.csdn.net/weixin_44402694/article/details/123110136)以下示例使用到的公共静态资料,不建议下载,建议官网自行下载超图Build资源,示例所涉及图片会在示例使用到时提供出来。如有需要可下载:[https://download.csdn.net/download/weixin_44402694/82180350](https://download.csdn.net/download/weixin_44402694/82180350)。特效-云层设置。

使用

  • 效果

  • 完整代码

<!DOCTYPE html>
<html lang="en"><head><meta charset="UTF-8" /><meta http-equiv="X-UA-Compatible" content="IE=edge" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><title>特效 - 云层设置</title><link href="./public/Build/Cesium/Widgets/widgets.css" rel="stylesheet" /><scripttype="text/javascript"src="./public/Build/Cesium/Cesium.js"></script><style>* {margin: 0;padding: 0;}html,body,#cesium-container {width: 100%;height: 100%;}.panel {position: fixed;left: 10px;top: 10px;z-index: 1;background-color: #fff;padding: 10px;}.panel .btn {cursor: pointer;display: none;}.panel .check {cursor: pointer;}</style></head><body><div id="cesium-container" /><div class="panel"><p class="check">开启云层 <input type="checkbox" /></p><p class="btn">云层纹理1</p><p class="btn">云层纹理2</p></div><script>let viewer, cloudBoxwindow.onload = function () {viewer = new Cesium.Viewer('cesium-container', {sceneModePicker: true,navigation: false,})initCreateCloudBoxHandler()initBindDrawEventHandler()}// 初始化绑定按钮的绘制事件function initBindDrawEventHandler() {const check = document.querySelector('.check input')const btns = document.querySelectorAll('.panel .btn')check.addEventListener('change', () => {Array.from(btns).forEach((btn) => {btn.style.display = check.checked ? 'block' : 'none'})if (check.checked) {// 开启云层viewer.scene.cloudBox = cloudBox// 默认高亮云层纹理1viewer.scene.cloudBox.url ='http://support.supermap.com.cn:8090/webgl/examples/webgl/images/clouds-supermap-sm.png'activeCurrentClickBtnHandler(0)} else {viewer.scene.cloudBox = null}})btns[0].addEventListener('click', () => {activeCurrentClickBtnHandler(0)viewer.scene.cloudBox.url ='http://support.supermap.com.cn:8090/webgl/examples/webgl/images/clouds-supermap-sm.png'})btns[1].addEventListener('click', () => {activeCurrentClickBtnHandler(1)viewer.scene.cloudBox.url ='http://support.supermap.com.cn:8090/webgl/examples/webgl/images/clouds.png'})}// 初始化创建云层boxfunction initCreateCloudBoxHandler() {cloudBox = new Cesium.CloudBox({url: 'http://support.supermap.com.cn:8090/webgl/examples/webgl/images/clouds-supermap-sm.png',})}// 高亮当前点击的按钮function activeCurrentClickBtnHandler(idx) {const btns = document.querySelectorAll('.panel .btn')Array.from(btns).forEach((btn, index) => {btn.style.color = index === idx ? 'red' : '#000'})}</script></body>
</html>

【超图+CESIUM】【基础API使用示例】38、超图|CESIUM - 特效-云层设置相关推荐

  1. 【超图+CESIUM】【基础API使用示例】41、超图|CESIUM - 特效-雪景设置

    前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...

  2. 【超图+CESIUM】【基础API使用示例】04、超图|CESIUM - 设置地图风格样式

    前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...

  3. 【超图+CESIUM】【基础API使用示例】10、超图|CESIUM - 场景出图、下载当前截图

    前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...

  4. 【超图+CESIUM】【基础API使用示例】42、超图|CESIUM - 绘制编辑线段|读取kml文件绘制编辑|导出kml线段数据

    前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...

  5. 【超图+CESIUM】【基础API使用示例】43、超图|CESIUM - 绘制编辑面|读取kml文件绘制编辑|导出kml面数据

    前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...

  6. 【超图+CESIUM】【基础API使用示例】22、超图|CESIUM - 标绘面:Cesium.DrawHandler绘制面Cesium.DrawMode.Polygon

    前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...

  7. 【超图+CESIUM】【基础API使用示例】16、超图|CESIUM -设置地球模式:椭球模式、圆球模式

    前言 缺少前置学习使用资料,请自行查阅:[https://blog.csdn.net/weixin_44402694/article/details/123110136](https://blog.c ...

  8. 【超图+CESIUM】【基础API使用示例】50、超图|CESIUM - moveLeft\moveRight\moveForward\moveBackward实现运动中的碰撞检测效果

    前言 由于项目业务需要,所以实现了这四个api的碰撞检测效果. 核心是通过ray射线来做碰撞检测. 代码目录结构 核心代码 <ul class="btn-list">& ...

  9. Cesium基础使用介绍

    既然给我发了参与方式,不参加似乎有点不给人面子,反正也没多少人看我的博客,那我就试试吧,也欢迎大家自己参与:2017年度全网原创IT博主评选活动投票:http://www.itbang.me/goVo ...

最新文章

  1. JAVA中文注解驱动,解决api接口返回的json里面出现中文乱码的问题
  2. RHEL5.4配置apxs扩展工具
  3. combox qt 引起的删除失败_关于QT的QCombox的掉坑出坑
  4. IAR EW6.30版本下建立STM32工程(芯片型号STM32F105VC)
  5. oracle gsd,晕死:11203GSD死活起不来
  6. jquery与ajax的XMLHttpRequest对象介绍
  7. C#黔驴技巧之去重(Distinct)
  8. Linux网络模块全局变量,()不是Linux系统的特色.
  9. erwin 不能输入中文_国产开源建模软件PDMan与国外商业建模软件ERwin的主要功能比较...
  10. js textarea 显示html代码,将Textarea文本设置为正确格式化的HTML代码与jQuery
  11. 错误:java.lang.ClassNotFoundException: com.mysql.cj.jdbc.Driver
  12. python最速下降法
  13. iOS APP测试方法和测试工具 大揭秘
  14. 我们都应该停止三种测试实践
  15. 时间管理类APP分析:拇指时间
  16. [学习笔记]opencv双线性插值法图像放大
  17. 安装算量软件免费吗?鹏业安装算量(在线版):更简单、更高效
  18. Redis ~ Lua。
  19. 计算机主机箱中最大的一块印刷电路板是,2计算机系统的硬件和软件
  20. 【Lua-lvgl】3.容器cont

热门文章

  1. QT network
  2. android 9.0 系统添加开机铃声
  3. Google一日体验
  4. 播放rtmp在线网站及播放器
  5. Linux安装MATLAB 2017a
  6. Docker 自建 Bitwarden 密码服务器 centOS + 宝塔面板
  7. 君子签:21亿份电子合同为环保助力,签领绿色未来
  8. S7-1212C AC/DC/DLY作为PN主站通过PROFINET转Modbus RTU网关设备与Micro Logix 140
  9. Linux内存控制器(一)
  10. Python实现消消乐小游戏