位置: IT常识 - 正文

Cesium加载离线地图和离线地形(cesium加载s3m)

编辑:rootadmin
Cesium加载离线地图和离线地形 文章目录前言一、Cesium加载离线地图1.1 下载数据2.2 数据处理2.3 地图发布2.4下载速度改进二、Cesium加载离线地形2.1 下载数据2.2 数据处理2.3 地形发布2.4 遇到的问题前言

推荐整理分享Cesium加载离线地图和离线地形(cesium加载s3m),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cesium加载wfs,cesium加载离线地图和离线地形,cesium加载离线地图作为地图,cesium加载离线地图作为底图,cesium加载离线地图作为地图,cesium加载离线地图作为底图,cesium加载离线地图和离线地形,cesium加载离线地图,内容如对您有帮助,希望把文章链接给更多的朋友!

直接把地图数据切片,然后通过nginx以静态服务方式发布。

使用工具:

图新地球 提取码:oznv————————————用来下载地图红豆地球 提取码:2thg————————————用来下载地图Nginx 提取码:wnjl——————————————代理服务器,用于瓦片数据发布Cesiumlab 提取码:iey3————————————用于数据切片MapBox影像 提取码:48dt———————————用来加载影像Test源码 提取码:1cpt——————————————Test目录下所有文件桂林市七星区地形数据 提取码:ee1k————————桂林市七星区地形原始数据和处理后的数据一、Cesium加载离线地图1.1 下载数据

打开红豆地球直接拖入加载MapBox影像

点击下载全球

新建下载

由于没有付费下载速度非常慢,所以得找一款下载速度较快的软件,在2.4改进中提出。

2.2 数据处理

输出数据

2.3 地图发布

首先在官网下载nginx(在前言中有百度云链接),下载windows稳定版。

下载好后解压出来,不要直接运行nginx.exe,要通过命令行来运行。

使用cd命令到达nginx的解压缩后的目录

cd C:UsersLenovoDesktop ginx-1.22.0

使用启动命令启动nginx服务,会有一个窗口一闪而过。

start nginx

查看任务进程是否存在,dos输入:

tasklist /fi “imagename eq nginx.exe”

最后用浏览器访问http://localhost/就可以看到成功部署页面。

紧接着修改配置文件,配置目录各文件夹作用如下图所示,这里只修改conf目录里面的文件。

在conf目录下找到nginx.conf使用vscode打开即可,找到server这个节点修改成如下保存(原来server函数全部删除)。

server { listen 80; location / { alias C:/Users/Lenovo/Desktop/Test/CesiumDemo/; index index.html index.htm; } location /map { alias C:/Users/Lenovo/Desktop/Test/data; autoindex on; autoindex_localtime on; } }

修改完成后保存,使用以下命令检查一下配置文件是否正确,后面是nginx.conf文件的路径,successful就说明正确了。

nginx -t -c /Users/Lenovo/Desktop/nginx-1.22.0/conf/nginx.conf

使用以下命令重新加载nginx,注意:每次修改完配置文件都要重新使用命令加载一次

nginx -s reload

这里在桌面Test中新建两个文件夹存放Cesium和数据

在CesiumDemo放入第一个Cesium APP(hello world)的文件

在data文件夹放入导出的数据

通过浏览器尝试访问http://localhost/map/即可看到数据路径下的文件

最后在CesiumDemo文件夹中的index.html中引入瓦片地图服务代码

var viewer = new Cesium.Viewer('cesiumContainer', { animation: false,//是否显示动画控件 baseLayerPicker: true,//是否显示图层选择控件 geocoder: true, timeline: false, sceneModePicker: true, navigationHelpButton: false, infoBox: true, imageryProvider: new Cesium.UrlTemplateImageryProvider({ url: '/map/{z}/{x}/{y}.png', fileExtension: 'png' })});

index.html完整代码

<!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>Cesium App</title> <script src="./scripts/Cesium/Cesium.js"></script> <link rel="stylesheet" href="./scripts/Cesium/Widgets/widgets.css"> <style> html, body, .container{ height: 100%; width: 100%; margin: 0; padding: 0; } </style></head><body> <div id="cesiumContainer" ></div> <script> var viewer = new Cesium.Viewer('cesiumContainer', { animation: false,//是否显示动画控件 baseLayerPicker: true,//是否显示图层选择控件 geocoder: true, timeline: false, sceneModePicker: true, navigationHelpButton: false, infoBox: true, imageryProvider: new Cesium.UrlTemplateImageryProvider({ url: '/map/{z}/{x}/{y}.png', fileExtension: 'png' })}); </script></body></html>

通过访问http://localhost/打开Cesium得到图像

2.4下载速度改进

改进方法是使用图新地球下载数据会更快,在这里演示下载湖南省地图数据

首先解压后双击打开图新地球

直接拖入MapBox.lrc图层到图新地球

Cesium加载离线地图和离线地形(cesium加载s3m)

在搜索栏中搜索湖南省

点击下载

选择地图上湖南省包围的平面,然后配置好下载,这里下载11个级别391.5MB(两分钟即可下载好)。

设置好路径下载

下载好后使用官网工具Cesiumlab进行影像切片

选择11个层级后选择散列

等待数据处理好

处理好后将data文件夹里原来的数据全部删除,然后用处理好的数据全部替换,最后重新访问http://localhost/得到只有湖南省影像的地图。

图新地球目前没有找到下载全球影像的方法,不过他可以下载多个图层,此后在做补充。

参考资料:

Cesium离线地图极简教程如何在Windows系统搭建Nginx服务器二、Cesium加载离线地形

这是官网地形效果,下面加载本地离线地形,方法同加载离线地图一样,先下载数据切片后通过nginx发布。

2.1 下载数据

首先在地理空间数据云上下载数据。http://www.gscloud.cn/search(桂林市七星区地形数据 提取码:ee1k )

选择好需要下载的数据级,这里选择DEM数字高程数据中的GDEMV3 30M分辨率数字高程数据。

然后检索广西桂林七星区数据。

实际下载的数据是图中较大框内的数据,远比七星区大。

点击下载标签下载

2.2 数据处理

下载完后解压出来,打开CesiumLab选择地形切片。

配置好后提交出来,在这里同样选择散列。

实际耗时半个小时处理完(为节省时间地形已传百度云:桂林市七星区地形数据 提取码:ee1k )

2.3 地形发布

处理完后同样在Test文件夹下新建一个terrain文件夹存放地形数据,原地图数据可新建一个map文件夹保存。terrain文件夹内文件如图所示。

在nginx的conf目录下找到nginx.conf修改配置文件,在server函数中添加

ocation /terrain { alias C:/Users/Lenovo/Desktop/Test/data/terrain; autoindex on; autoindex_localtime on;}

完整server代码如下:

server { listen 80; location / { alias C:/Users/Lenovo/Desktop/Test/CesiumDemo/; index index.html index.htm;}location /map { alias C:/Users/Lenovo/Desktop/Test/data/map; autoindex on; autoindex_localtime on;}location /terrain { alias C:/Users/Lenovo/Desktop/Test/data/terrain; autoindex on; autoindex_localtime on;}}

使用以下命令重新加载nginx,注意:每次修改完配置文件都要重新使用命令加载一次

nginx -s reload

在浏览器访问http://localhost/terrain/即可看到terrain内目录中的文件成功发布。

最后在CesiumDemo文件夹中的index.html中引入地形服务代码

var terrainProvider = new Cesium.CesiumTerrainProvider({url: 'http://localhost:80/terrain'});viewer.terrainProvider = terrainProvider;

完整代码:

this.viewer = new Cesium.Viewer('cesiumContainer', { selectionIndicator: false, // 不显示指示器小部件 infoBox: true, // 不显示信息框 sceneModePicker: false, // 不显示模式切换选项 baseLayerPicker: false, navigationHelpButton: false, animation: true, shouldAnimate: true, geocoder: false, homeButton: false, imageryProvider: new Cesium.UrlTemplateImageryProvider({ url: '/map/{z}/{x}/{y}.png', fileExtension: 'png' })}) var terrainProvider = new Cesium.CesiumTerrainProvider({ url: 'http://localhost:80/terrain' }); viewer.terrainProvider = terrainProvider;

本地影像效果如图

对比官方影像数据发现问题。

参考资料:

Cesium:加载本地高程/地形数据2.4 遇到的问题问题:效果差、精度低,有很多小地形没有显示原因:可能是因为下载的地形数据分辨率和精度较低改进:寻找精度分辨率更高的地形数据

先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

本文链接地址:https://www.jiuchutong.com/zhishi/283906.html 转载请保留说明!

上一篇:React developer tools调试工具全网最新最全安装教程

下一篇:BLINK AC1200U路由器怎么开启访客模式(ac1203路由器)

  • 海关进口啥意思
  • 纳税会计的要素有
  • 计提所得税比实际缴纳的少
  • 国有股权无偿划转协议
  • 用友T3资产负债表公式
  • 管理费用怎么结转成本
  • 失业保险费返还后是给单位还是给员工
  • 租入固定资产改扩建
  • 金税盘开具电子发票后如何保存电子版
  • 计提工会经费的贷方账户为
  • 什么是资金账簿印花税
  • 公司注册资金实缴有什么好处
  • 企业所得税申报时间
  • 资产损失税前扣除
  • 汽车修理店业务范围
  • 资产减值损失结转
  • 一般纳税人税负率一般控制在多少?法律依据
  • 预付账款冲销其他应付款法人吗
  • 企业所得税怎么征收
  • 专票税率开错了有什么影响
  • 利润转增资本交什么税
  • 插值法求利率计算公式
  • 外币账户和外汇账户一样吗?
  • 委托加工材料收回后的入账价值
  • 做研发费用需要什么条件
  • mac系统如何连接北通手柄
  • macos的复制粘贴快捷键
  • 外经证核销办理流程图
  • prevsrv.exe - prevsrv是什么进程 有什么用
  • 宏基笔记本电脑售后电话
  • 小规模纳税人如何申报增值税
  • php正则表达式实例
  • apache运行php
  • php常用的设计模式在开发中的实例
  • ibm-web-ext.xmi
  • uniapp监听网络状态
  • 工程款清欠管理办法
  • 代理记账费用计入什么会计科目
  • 商贸公司销货怎么做会计分录
  • 木质家具出口
  • 用银行存款支付前欠货款
  • 民非企业保险支出包括
  • 固定资产以前年度未入账怎么处理
  • labelme目标检测
  • 模型论文是什么类型
  • 会计中利得的定义
  • 三栏式明细账需要每笔结余额吗
  • 进项税额转出月底需要结转吗
  • 预提管理费用怎么计算
  • spring10
  • 财务报表的组成主要包括
  • 上个月没有清卡在其他地区税务
  • 下列项目的进项税额可以从销项税额中抵扣的是()
  • 本年利润期末需要结转吗
  • 评估价与成交价差距叫做什么
  • 固定资产清理的累计折旧怎么算
  • 公司验资报告多少钱
  • 单位发放职工2000元慰问金申请怎么写
  • 金税盘费用不交会怎么样
  • 明细账怎么弄
  • mysql数据源
  • mysql如何导出数据
  • mysql 5.7启动
  • mysql免安装版本
  • Win7/Win8/Win10单、多系统一键安装教程 只需30秒!
  • linux 维护命令
  • 屏保 win7
  • windows10更新出错
  • win7系统磁盘分区必须分区为什么才能安装
  • linux批量处理文件
  • exe是什么进程
  • Mac系统中文件的唯一id
  • png批量转换成jpg
  • jQuery实现两个下拉列表关联
  • node.js ssh
  • 以下关于js说法错误的是
  • 使用express
  • jQuery基于muipicker实现仿ios时间选择
  • c# hashtable 用法
  • 四川国税局普通发票查询?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设