如何在内网离线发布全国高程DEM数据并在OsgEarth中调用
lipiwang 2025-03-07 20:40 8 浏览 0 评论
1. 概述
前段时间,给大家介绍了基于《水经注地图发布服务中间件4.0》离线发布全球卫星影像的方法【点击回顾】,今天再为大家讲解如何离线发布全国高程DEM数据并在OsgEarth中进行调用的方法。
2. 数据与软件准备
需要离线发布全国高程DEM数据,请确保地图发布服务中间件版本为4.0.4以上,如果低于该版本,请通过私信回复"中间件"免费获取最新版本安装包,也可以直接到官网下载。
提供的示例数据包括卫星影像、地名标签和30米高程Dem数据,由于这里主要是为了进行功能性演示,因此影像数据和高程数据均仅提供了前10级数据。
3. 全国高程离线发布
软件的安装与离线卫星影像的发布方法,请参阅"全球卫星影像离线发布神器《水经注地图发布服务中间件4.0》正式发布"一文【点击回顾】,这里略有不同的地方主要是可以在安装的过程中将卫星影像、地名标签和高程DEM文件路径全部设置完整。由于这里发布的数据是为了让OsgEarth进行调用,因此发布的高程格式为默认的"GeoTiff"格式,如下图所示。
需要特别注意的是,安装时在安装包单击鼠标右键,然后在显示的右键菜单中选择"以管理员身份运行"进行安装,安装完成之后显示如下图所示。
4. 在OsgEarth中离线调用
OsgEarth是一款开源的三维地球,你可以在OsgEarth官方网站下载最新版本,这里我们提供的是2.7版本,你可以通过私信回复"OsgEarth27"获取下载地址。
在运行OsgEarth之前,需要为其配置正确的数据发布地址。首先,可以通过在DOS窗口中运行"IPConfig"命令或其它方式获取本机IP地址,如下图所示。
然后,在提供的OsgEarth27程序目录中找到"map.earth"配置文件,如下图所示。
在记事本中打开"map.earth"文件,然后将IP地址改为你的本机IP地址,如下图所示。
复制发布图层的URL地址在浏览器中打开(例如:
http://192.168.0.5/WeServer/tms/1.0.0/acimage/),如果能正常显示图层信息则说明离线地图内网发布成功,如下图所示。
在OsgEarth27程序目录中,找到运行程序"IxEarthViewer.exe"文件所在目录(例如:C:\OsgEarth27\Bin\ReleaseWin32),如下图所示。
复制"IxEarthViewer.exe"文件所在目录路径,这样可以方便在命令窗口中快速粘贴目录位置,然后输入"IxEarthViewer.exe ../map.earth"命令,如下图所示。
执行命令之后,将会显示三维地球,如下图所示。
放大之后可以查看到三维地形,如下图所示。
至此,通过《地图发布服务中间件4.0》在内网发布离线卫星影像与高程DEM,并在OsgEarth中离线调用显示的目的达到了。这样一来,将"OsgEarth27"目录复制到内网中的任何一台电脑上运行都可以显示三维地形。
接下来,我们再拓展一下演示一下OsgEarth的天空盒显示功能和基于《全国离线地图5.0》的显示效果。
5. 天空盒效果
从上文中可以看到,显示的三维地球没有天空,看起来不够美观,我们可以通过在DOS命令窗口中执行"osgearth_viewer.exe ../map.earth --sky"命令显示天空盒,如下图所示。
程序启动之后,可以看到显示了一个带有大气效果和星空背景的蓝色地球,几乎与GoogleEarth地球一模一样,如下图所示。
在视图的左下角,可以通过调整滑块的方式来调整太阳的位置,如下图所示。
可以将地球显示视角调整到太阳初升的时候,可以看见美丽的地平线,如下图所示。
清晨初升的太阳,普照着我神州大地,如下图所示。
6. 水经注全国离线地图5.0效果
本文中为大家提供的示例数据为全球前10级离线卫星影像与高程DEM数据,因此显示效果会有一些差强人意。但当把22.3TB的《全国离线地图5.0》在内网离线发布,并加载到OsgEarth中之后,效果就非常惊艳了!由于该数据为全国1-20级高清卫星影像,因此相当于是一个可以在内网离线运行的谷歌地球,如下图所示。
7. 总结
最后再次申明,由于本文中提供的数据为示例数据,旨在说明地图发布服务中间件的内网离线发布功能,因此卫星影像数据和高程DEM数据都仅仅是全球前10级数据。也就是说由于分辨率比较低,从而导致了显示出的三维效果并不是非常的突出。如果你希望能显示出类似于谷歌地球的三维地球效果,可以通过私信回复"免费数据"可领取一个省的高清卫星影像和全国的30米高程DEM切片数据,然后更新到对应的数据目录即可!
相关推荐
- 前端 JavaScript 字符串中提取数字
-
varstr="4500元";varnum=parseInt(str);alert(num);//4500如果字符串前面有非数字字符,上面这种方法就不行了:var...
- 使用JavaScript如何获取网站网址(js如何获取浏览器信息)
-
在做网站开发时,我们有时候会获取当前页面的完整路径。在网页前端如何实现呢?请在网页脚本代码段中粘贴如下代码。functiongetRootPath(){//获取当前网址,...
- java文本对比工具源码8(java比较文本相似度)
-
/***ParseatextualrepresentationofpatchesandreturnaListofPatch*objects.*@paramtextline...
- JavaScript实现的9大排序算法(js排序方法)
-
笔试面试经常涉及各种算法,本文简要介绍常用的一些算法,并用JavaScript实现。1、插入排序1)算法简介插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通...
- 使用函数化的Javascript代码编写方式
-
对于Javascript介绍想必大家都耳熟能详啦,基于函数化的编程语言,基于浏览器运行的编程语言,web开发语言,前端开发必备语言,blablabla...Javascript是一个非常灵...
- Js基础31:内置对象(js内置对象是什么意思)
-
js里面的对象分成三大类:内置对象ArrayDateMath宿主对象浏览器提供的对象(如bom、dom等等)自定义对象开发人员自己定义的对象内置对象——所谓内置对象,就是JavaScript自...
- js获取上传文件类型以及大小的方法
-
前端web上传文件时,需要在上传之前判断一下文件的类型以及文件的大小,HTML为前端的标记语言是无法做到这一点,只能使用javascript动态脚本代码来实现。js获取上传文件大小的方法示例代码:&...
- 黑客入门实践:如何绕过前端过滤上传文件
-
今天开始,我们就要开始学习具体的漏洞了,但是希望大家学完后,不要轻易"入侵"网站哦,当时测试环境下除外。今天的课程是关于“文件上传漏洞”,据安界网的老师介绍,文件上传漏洞仅次于命令执行...
- Java文件上传细讲(java文件夹上传)
-
什么是文件上传?文件上传就是把用户的信息保存起来。为什么需要文件上传?在用户注册的时候,可能需要用户提交照片。那么这张照片就应该要进行保存。免费学习资料获取方式上传组件(工具)为什么我们要使用上传工具...
- 鸿蒙上实现“翻译”功能(鸿蒙宴全文翻译)
-
本章节我们来制作中文翻译成英文的实例(运行在HarmonyOS上),通过HTTP去配合API进行实现。需求分析如下:文字输入HTTP协议使用文字翻译控件介绍①HTTP数据请求官方文档请求...
- JavaScript从入门到精通(javascript 入门教程)
-
前几天,我们学习了JavaScript的入门课程,但是要想做网站,仅仅学会入门是不够的,今后的几天,我将带领大家精通JavaScript,希望大家好好学习!JS内置对象String对象:字符串对象,提...
- 第15天|16天搞定前端,javascript语法篇(干货)
-
JavaScript是互联网上最流行的脚本语言,这门语言可用于HTML和web,可广泛用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备。它是一个脚本语言,它是一个轻量级,但功能强大的编程...
- 通过js来实现打字效果(js如何输入)
-
有时候浏览网页经常会看见一些页面出现一些打字的效果,那么是怎么实现的呢?逻辑确定目标容器,在哪个容器进行输出确定输出内容,当前直接根据目标容器确定输出内容即可需要控制输出频率,因此需要循环输出完毕代码...
- 手把手教你学会一键还原混淆js原理
-
1.短变量名在以下示例代码中,我们将变量“customerName”替换为“a”:vara="JohnSmith";console.log(a);2.随机变量名在以下示例代码...
- sql中常用的字符串函数详解(sql字符串函数有哪些)
-
在日常开发中遇到处理最多的可能字符串要算其中一个了,什么替换啊截取啊大小写转换啊、删除空格啊等等,这些操作我们可以在前端操作,也可以直接在数据库的sql中操作,那么我们来看一下sql中处理字符串的...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- maven镜像 (69)
- undefined reference to (60)
- zip格式 (63)
- oracle over (62)
- date_format函数用法 (67)
- 在线代理服务器 (60)
- shell 字符串比较 (74)
- x509证书 (61)
- localhost (65)
- java.awt.headless (66)
- syn_sent (64)
- settings.xml (59)
- 弹出窗口 (56)
- applicationcontextaware (72)
- my.cnf (73)
- httpsession (62)
- pkcs7 (62)
- session cookie (63)
- java 生成uuid (58)
- could not initialize class (58)
- beanpropertyrowmapper (58)
- word空格下划线不显示 (73)
- jar文件 (60)
- jsp内置对象 (58)
- makefile编写规则 (58)