CesiumJS - 3D Tiles BIM

eryar@163.com

1. Introduction

CesiumJS is an open-source JavaScript library for world-class 3D globes and maps.

从其官网上可以看到这个库的愿景:提供世界级的三维地图。由于其高性能,对大模型的优化技术,可以用于BIM。支持Cesium的财团里面就有Bentley。Bentley也有工厂CAD软件。

2. Node.js

从nodejs官网https://nodejs.org/en/download/上下载安装包,如果没有安装权限,可以下载免安装的打包文件:

直接解压到d:/nodejs。并在此文件夹中创建两个文件夹:node_global, node_cache,如下图所示:

然后使用CMD窗口,切换到d:/nodejs目录,输入如下命令来设置global和cache:

npm config set prefix “d:/nodejs/node_global”

npm config set cache “d:/nodejs/node_cache”

并修改nodevars.bat中的环境变量:

并运行nodevars.bat。

安装CesiumJS所需要的插件:

npm install compression -g

npm install request -g

npm install yargs -g

3. CesiumJS Hello World

在CMD命令窗口中切换到Cesium文件夹,并输入命令:

Node server.js

出现如下图所示的 Cesium development server running locally.

表示Cesium可以在本地运行了。

在浏览器中输入地址:http://localhost:8080,出现如下图所示页面:

点击HelloWorld链接,出现如下图所示的的一个三维地球就表示Cesium安装成功了。

4. 3D Tiles BIM Demo

在Cesium的官网上有Bentley提供的一个工厂BIM模型例子,可以从如下地址查看:

https://cesiumjs.org/Cesium/Build/Apps/Sandcastle/index.html?src=3D%20Tiles%20BIM.html

从其官方的介绍来看,Cesium使用的3D Tiles技术可以对三维模型数据进行压缩及其他优化技术,使其可以加载很大的模型的情况下,浏览顺畅。且3D Tiles格式也是开源的,可以学习借鉴。

5. Conclusion

本文介绍了CesiumJS这个JavaScript库的安装和配置,并展示了其在BIM中的一个应用例子。可以通过学习CesiumJS来将PDMS模型转换成3D Tiles格式,来测试其对大模型的支持效果。

CesiumJS - 3D Tiles BIM的更多相关文章

  1. 下一代的 3D Tiles 前瞻

    下一代的 3D Tiles 前瞻 原文:Introducing 3D Tiles Next, Streaming Geospatial to the Metaverse 原文发布时间:2021年11月 ...

  2. i-Urban Renovation使用3D Tiles可视化鸟取县Munakata建筑状态

    Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 日本的鸟取县,使用i-Urban Renovation appl ...

  3. 使用3D Tiles Overview学习3D Tiles

    Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 3D Tiles的创建是为了在web上传输大量的3D数据集.作为 ...

  4. Cesium入门10 - 3D Tiles

    Cesium入门10 - 3D Tiles Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 我们团队有时把Ces ...

  5. Cesium原理篇:3D Tiles(1)渲染调度

    Cesium在2016年3月份左右推出3D Tiles数据规范,在glTF基础上提供了LOD能力,定位就是Web环境下海量三维模型数据.虽然目前3D Tiles还是Beta阶段,有不少硬伤,但3D T ...

  6. Cesium原理篇:3D Tiles(2)数据结构

    上一节介绍3D Tiles渲染调度的时候,我们提到目前Cesium支持的Cesium3DTileContent目前支持如下类型: Batched3DModel3DTileContent Instanc ...

  7. Cesium原理篇:3D Tiles(3)个人总结

    个人结论:目前,在演示层面,3D Tiles问题不大,但项目应用上就不够成熟了,所以问问自己,你是想吃瓜呢还是想吃螃蟹? 好的方面 数据规范 我非常喜欢glTF的整体设计,概括有四点:第一,数据块(B ...

  8. cesium编程入门(七)3D Tiles,模型旋转

    cesium编程入门(七)3D Tiles,模型旋转 上一节介绍了3D Tiles模型的位置移动,和贴地的操作,这一节来聊一聊模型的旋转, 参考<WebGl编程指南>的第四章 假设在X轴和 ...

  9. cesium编程入门(六)添加 3D Tiles,并调整位置,贴地

    添加 3D Tiles,并调整位置 3D Tiles 是什么 3DTiles数据集是cesium小组AnalyticlGraphics与2016年3月定义的一种数据集,3DTiles数据集以分块.分级 ...

随机推荐

  1. Data Member Order

    https://docs.microsoft.com/en-us/dotnet/framework/wcf/feature-details/data-member-order In some appl ...

  2. C&C控制服务的设计和侦测方法综述——DDoS攻击,上传从宿主机偷窃的到的信息,定时给感染机文件加密勒索等。

    这篇文章总结了一些我在安全工作里见到过的千奇百怪的C&C控制服务器的设计方法以及对应的侦测方法,在每个C&C控制服务先介绍黑帽部分即针对不同目的的C&C服务器设计方法,再介绍白 ...

  3. vue --- 路由传参的几种方式

    方案一: getDescribe(id) { // 直接调用$router.push 实现携带参数的跳转 this.$router.push({ path: `/describe/${id}`, }) ...

  4. sql查询每个学生的最高成绩mysql语句

    张三 语文 100 张三 数学 83 李四 语文 88 李四 数学 100 查询每个学生的最高成绩. select b.* from (select name,max(score) score fro ...

  5. #p-complete原来比np更难

    转载一下豆瓣的一个不知名的朋友的介绍: NP是指多项式时间内验证其解是否正确.比如: 我们给一个0-1背包的解,就可以在多项式时间内验证是否满足条件.至于是否能找到 满足条件的解,这在NP复杂度里没有 ...

  6. 用fcntl锁一个文件来保护操作

    int testfd; /* fd for test*/ if((testfd = open("/usr/local/pgsql/bin/test_fd",O_RDWR|O_CRE ...

  7. 给 “rm” 命令添加个“垃圾桶”

    作者: 2daygeek 译者: LCTT amwps290 人类犯错误是因为我们不是一个可编程设备,所以,在使用 rm 命令时要额外注意,不要在任何时候使用 rm -rf *.当你使用 rm 命令时 ...

  8. 洛谷 P1368 工艺 后缀自动机 求最小表示

    后缀自动机沙茶题 将字符串复制一次,建立后缀自动机. 在后缀自动机上贪心走 $n$ 次即可. Code: #include <cstdio> #include <algorithm& ...

  9. 学习Go语言之简易ORM框架

    ORM即为对象关系映射,ORM常用于程序适配多种数据库,以达到开放扩展关闭修改的原则.笔者初学Golang,遂有意写个简易ORM框架,权当知识巩固. 首先需要有一个思想就是数据库表结构都是固定,但是每 ...

  10. 【UVa 116】Unidirectional TSP

    [Link]:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_probl ...