CesiumJS - 3D Tiles BIM
CesiumJS - 3D Tiles BIM
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的更多相关文章
- 下一代的 3D Tiles 前瞻
下一代的 3D Tiles 前瞻 原文:Introducing 3D Tiles Next, Streaming Geospatial to the Metaverse 原文发布时间:2021年11月 ...
- i-Urban Renovation使用3D Tiles可视化鸟取县Munakata建筑状态
Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 日本的鸟取县,使用i-Urban Renovation appl ...
- 使用3D Tiles Overview学习3D Tiles
Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 3D Tiles的创建是为了在web上传输大量的3D数据集.作为 ...
- Cesium入门10 - 3D Tiles
Cesium入门10 - 3D Tiles Cesium中文网:http://cesiumcn.org/ | 国内快速访问:http://cesium.coinidea.com/ 我们团队有时把Ces ...
- Cesium原理篇:3D Tiles(1)渲染调度
Cesium在2016年3月份左右推出3D Tiles数据规范,在glTF基础上提供了LOD能力,定位就是Web环境下海量三维模型数据.虽然目前3D Tiles还是Beta阶段,有不少硬伤,但3D T ...
- Cesium原理篇:3D Tiles(2)数据结构
上一节介绍3D Tiles渲染调度的时候,我们提到目前Cesium支持的Cesium3DTileContent目前支持如下类型: Batched3DModel3DTileContent Instanc ...
- Cesium原理篇:3D Tiles(3)个人总结
个人结论:目前,在演示层面,3D Tiles问题不大,但项目应用上就不够成熟了,所以问问自己,你是想吃瓜呢还是想吃螃蟹? 好的方面 数据规范 我非常喜欢glTF的整体设计,概括有四点:第一,数据块(B ...
- cesium编程入门(七)3D Tiles,模型旋转
cesium编程入门(七)3D Tiles,模型旋转 上一节介绍了3D Tiles模型的位置移动,和贴地的操作,这一节来聊一聊模型的旋转, 参考<WebGl编程指南>的第四章 假设在X轴和 ...
- cesium编程入门(六)添加 3D Tiles,并调整位置,贴地
添加 3D Tiles,并调整位置 3D Tiles 是什么 3DTiles数据集是cesium小组AnalyticlGraphics与2016年3月定义的一种数据集,3DTiles数据集以分块.分级 ...
随机推荐
- 44.AngularJS Bootstrap
转自:https://www.cnblogs.com/best/tag/Angular/ Bootstrap 你可以在你的 AngularJS 应用中加入 Twitter Bootstrap,你可以在 ...
- 36.创建自定义的指令directive
转自:https://www.cnblogs.com/best/tag/Angular/ 1. <html> <head> <meta charset="utf ...
- js 实现 水仙花数
水仙花数是指一个 n 位数 ( n≥3 ),它的每个位上的数字的 n 次幂之和等于它本身.(例如:1^3 + 5^3+ 3^3 = 153) <!DOCTYPE html><html ...
- 从Git里拉取远程的所有分支
从Git里拉取远程的所有分支 git branch -r | grep -v '\->' | while read remote; do git branch --track "${r ...
- 互不侵犯_状压$dp$
如果有想学习状压\(dp\)的童鞋,请光临博客状压\(dp\)初学 互不侵犯 题目描述 在N×N的棋盘里面放K个国王,使他们互不攻击,共有多少种摆放方案.国王能攻击到它上下左右,以及左上左下右上右下八 ...
- UI Framework-1: Ash Color Chooser
Ash Color Chooser Overview This document describes how to achieve <input type=”color”> UI in C ...
- js利用点击事件做一个简单的计算器
先放一个样式图: 源代码如下: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"&g ...
- laravel模板机制
@extends('layouts.master') @section('title', 'Page Title') @section('sidebar') @parent <p>This ...
- spring-data-jpa 新增 修改 删除 查询 分页
1.查询所有数据 findAll() 2.分页查询 findAll(new PageRequest(0, 2)) 3.根据id查询 findOne() 4.根据实体类属性查询: findByPro ...
- 巧用MAC地址表
对于身处网络环境的人来说,不少朋友应该遇到过这种的情况:某一个终端找不到接在了哪一个交换机口上,也不知道数据包怎样走的. ok,那么这时候MAC地址表就作用了,拿下图的实验环境(H3C)来说好了 环境 ...