基于WebAssembly编码方式的易景地球三维可视化技术在数字林业中的应用

前言

数字林业虚拟现实与可视化技术主要围绕我们现实中的森林场景构建与现实相匹配的三维虚拟场景,结合卫星遥感数据、三维地形数据以及林业调查数据等,将传统的二维地图采用三维立体模式呈现森林资源状况。随着计算机硬件计算和软件技术的发展,全面推进“互联网+”林业建设,实现互联网思维,在林业三维可视化技术也需要适应这种互联网思维,把三维技术融入到“互联网+”的思维中,由过去的支持单一系统向多种平台支持发展。易景地球三维渲染引擎经过一年多的升级,采用WebAssembly c++编码方式实现对多种平台的支持,真正做到了“互联网+”林业的三维可视化技术。

WebAssembly概念

WebAssembly 是一种新的编码方式,可以在现代的网络浏览器中运行 - 它是一种低级的类汇编语言,具有紧凑的二进制格式,可以接近原生的性能运行,并为诸如 C / C ++等语言提供一个编译目标,以便它们可以在 Web 上运行。它也被设计为可以与 JavaScript 共存,允许两者一起工作。对于网络平台而言,WebAssembly 具有巨大的意义——它提供了一条途径,以使得以各种语言编写的代码都可以以接近原生的速度在 Web 中运行。在这种情况下,以前无法以此方式运行的客户端软件都将可以运行在 Web 中。

WebAssembly 被设计为可以和 JavaScript一起协同工作——通过使用 WebAssembly 的 JavaScript API,可以把 WebAssembly 模块加载到一个 JavaScript 应用中并且在两者之间共享功能。这允许你在同一个应用中利用 WebAssembly 的性能和威力以及 JavaScript 的表达力和灵活性,即使你可能并不知道如何编写 WebAssembly 代码。

“互联网+”易景地球三维渲染技术

采用WebAssembly c++重新编写易景地球三维渲染引擎,结合原有的易景地形编译工具、影像编译工具、矢量编译工具以及场景整合工具,利用易景服务发布服务,实现只用同一套库在Windows、MacOS、Linux、Android、IOS等操作系统上正常运行,避免了应用中多源头开发问题。

支持操作系统:

  • Windows 11、Windows 10、Windows 7
  • MacOS
  • Android
  • IOS

不同于其他开源WebGL引擎,通过WebAssembly C++编写的易景地球三维渲染引擎,所有的三维数据二进制模式通过C++进行解析,在网络传输中具有保密性。

1

图 易景地球三维引擎编译过程

“互联网+”林业三维可视化应用

易景地球已经形成了从数据处理到三维场景整合、发布的一整套软件工具生态链,通过JS脚本实现三维可视化与业务相结合。多样性的易景地球网页版API函数为二次开发提供了多样性功能的实现。

同时网络请求Http协议请求数据流在wasm内部C++解析,数据上具有一定的保密性。

3

图 三维林场资源图(来源国家森林资源智慧管理平台)

3

图 北斗林业信息三维可视化子系统(来源林业生态建设与保护北斗示范应用)

        未来“互联网+”二维的应用模式可以便捷的过渡到“互联网+”三维的应用模式。

“互联网+” 易景地球网页版体验

欢迎大家访问 3d.evialab.com(用户名:evia   密码:evia)(支持Edge、谷歌、火狐等浏览器)体验“互联网+”易景地球网页版。

44

图 易景地球网页版