【小沐杂货铺】基于Three.JS构建IFC模型浏览器(WebGL、CAD、Revit、IFC)

article/2025/6/28 9:33:29

文章目录

  • 1、简介
    • 1.1 Three.JS
    • 1.1 IFC.JS
  • 2、示例代码
    • 2.1 示例1
    • 2.2 示例2
    • 2.3 示例3
    • 2.4 示例4
    • 2.5 示例5
    • 2.6 示例6
    • 2.7 示例7
    • 2.8 示例8
    • 2.9 示例9
    • 2.10 示例10
  • 结语

1、简介

1.1 Three.JS

https://threejs.org/
Three.js 是一个基于 WebGL 的 JavaScript 3D 库,它封装了 WebGL 的底层 API,使开发者能够更简单地在网页上创建和展示 3D 场景和动画。

1.1 IFC.JS

https://www.buildingsmart.org/
行业基础类 (IFC) 是建筑资产行业的一组标准化数字描述。它是一个开放的全球标准,根据 Creative Commons 许可和 ISO 16739 发布。IFC 提供信息的机器可解释性,从而实现工作流程的自动化。它是供应商中立的,可供所有人使用。

IFC 的最新正式版本是 4.3.2.0。此版本通常称为 IFC 4.3,也由 ISO 作为最终 ISO 16739-1 标准发布。还提供 IFC 的早期版本。较旧的官方版本是 IFC 4.0.2.1 (IFC 4) 和 IFC 2.3.0.1 (IFC 2x3)。当前正在开发的版本是 IFC 5。
在这里插入图片描述
IFC 数据可以以 .ifc 文件(STEP 文件格式)或其他格式(如 .ifcXML 或 .ifcZIP)捕获(序列化)。但是,IFC 标准不仅仅是一种文件格式。它主要是一个数据模式,用于解释如何组织对象、其属性、关系等。IFC
也是由 buildingSMART 管理的旗舰项目,包括领域和实施者协议、文档、协作平台、认证计划和开发流程。

2、示例代码

2.1 示例1

代码编号:D1_1_CAD_IFC_js_vite
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2 示例2

代码编号:D1_2_CAD_IFC_js_rollup

在这里插入图片描述
在这里插入图片描述

2.3 示例3

代码编号:D1_3_CAD_IFC_js_rollup
在这里插入图片描述
在这里插入图片描述

2.4 示例4

代码编号:D1_4_CAD_IFC_js_rollup
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.5 示例5

代码编号:D1_5_CAD_IFC_js_rollup
在这里插入图片描述
在这里插入图片描述

2.6 示例6

代码编号:D1_6_CAD_IFC_js
在这里插入图片描述
在这里插入图片描述

2.7 示例7

代码编号:D1_7_CAD_IFC_ts_angular_ng
在这里插入图片描述
在这里插入图片描述

2.8 示例8

代码编号:D1_8_CAD_IFC_js_vue3_vite
在这里插入图片描述
在这里插入图片描述

2.9 示例9

代码编号:D1_9_CAD_IFC_js
在这里插入图片描述
在这里插入图片描述

2.10 示例10

代码编号:D1_10_CAD_IFC_js_rollup
在这里插入图片描述
在这里插入图片描述

结语

如果您觉得该方法或代码有一点点用处,可以给作者点个赞,或打赏杯咖啡;╮( ̄▽ ̄)╭
如果您感觉方法或代码不咋地//(ㄒoㄒ)//,就在评论处留言,作者继续改进;o_O???
如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡)
感谢各位大佬童鞋们的支持!( ´ ▽´ )ノ ( ´ ▽´)っ!!!


http://www.hkcw.cn/article/dmbxHmNwDy.shtml

相关文章

Spark-TTS: AI语音合成的“变声大师“

嘿,各位AI爱好者!还记得那些机器人般毫无感情的合成语音吗?或者那些只能完全模仿但无法创造的语音克隆?今天我要介绍的Spark-TTS模型,可能会让这些问题成为历史。想象一下,你可以让AI不仅说出任何文字&…

【AI论文】表R1:表格推理的推理时间扩展

摘要:在这项工作中,我们提出了第一个研究,探索推理时间缩放对表格推理任务的影响。 我们开发和评估了两种训练后策略来实现推理时间扩展:前沿模型推理轨迹的蒸馏和具有可验证奖励的强化学习(RLVR)。 对于蒸…

学习STC51单片机25(芯片为STC89C52RCRC)

每日一言 生活就像弹簧,你弱它就强,你强它就弱,别轻易认输。 ESP8266作为路由器模式(AP模式)也就是在局域网内可以有服务器的作用 那么我们需要将pc作为设备进行连接ESP的发射出来的WIFE 叫做这个AI啥的 也有可能叫做…

基于Android的拼车系统的设计与实现

博主介绍:java高级开发,从事互联网行业六年,熟悉各种主流语言,精通java、python、php、爬虫、web开发,已经做了六年的毕业设计程序开发,开发过上千套毕业设计程序,没有什么华丽的语言&#xff0…

美媒发现:中国持续上升,美国跌成负值

美媒公布最新民调:全球对中国好感度上升,美国形象转而跌入负区间值美国Axios新闻网2日援引晨间咨询公司(Morning Consult)最新民调数据称,全球对中国的好感度持续上升,而对美国的好感度则跌入负区间值,美国贸易政策正以牺牲其自身利益为代价,助推中国崛起。Axios新闻网…

马克龙笑容满面邀妻子与球队合影 甜蜜互动成焦点

马克龙笑容满面邀妻子与球队合影 甜蜜互动成焦点。5月28日,法国总统马克龙结束了对越南的访问后,与妻子布里吉特一同抵达印度尼西亚,开启正式访问行程。在越南访问期间,一段布里吉特“打脸”马克龙的视频引发了热议,尽管马克龙解释这只是两人间的玩笑,但这一事件仍让他显…

FFmpeg移植教程(linux平台)

目录 第三方源码编译三部曲关于 configure 的说明 FFmpeg 移植流程获取源码方法一:git 远程克隆方法二:官网下载压缩包解压 配置安装 第三方源码编译三部曲 Linux平台下有许多开源的第三方库和服务,这些开源代码一般都符合GNU-autotools编码…

ERP管理系统:Java+Vue,含源码及文档,涵盖采购、销售、库存等业务,优化企业运营

前言: 在当今竞争激烈的商业环境中,企业需要高效、精准地管理各个业务环节,以提升运营效率、降低成本、增强市场竞争力。ERP管理系统作为一种集成化的管理工具,将企业的各个核心业务模块整合在一个统一的平台上,实现了…

shiro使用详解

01-Shiro 实战教程 1.权限的管理 1.1 什么是权限管理 基本上涉及到用户参与的系统都要进行权限管理,权限管理属于系统安全的范畴,权限管理实现 对用户访问系统的控制 ,按照安全规则或者 安全策略 控制用户可以访问而且只能访问自己被授权的资…

ACTF2025-web-eznote-wp

附件审计 app.js const express require(express) const session require(express-session) // 会话管理中间件 const { randomBytes } require(crypto) // 生成加密随机数 const fs require(fs) // 文件系统操作 const spawn require(child_process) // 执行外部命令&a…

CSS 3D 变换中z-index失效问题

CSS 3D 变换中 z-index 失效问题 1. z-index 失效了 在 CSS 中,z-index 通常用于控制元素的层叠顺序,数值越大,元素越靠前显示。在 3D 变换(如 rotateX、translateZ) 中使用 z-index 时,可能会发现z-inde…

能源行业的网络安全:一场无声的战争

想象一下,你家的电力突然中断,冰箱里的食物开始变质,空调停止运转,甚至连手机充电都成了奢望。这不是科幻电影,而是网络攻击可能给我们的生活带来的真实影响。能源行业,这个维系现代社会运转的命脉&#xf…

ESP32-C3 + W5500 + MicroPython 编译记录

前言 我本来是想连个网,结果连上了无数个坑…… 在这个项目中,我的目标是用 ESP32-C3 W5500 作为有线网关,运行 MicroPython。听上去简单,实操下来却是一场跨平台 编译环境 烧录流程的大混战。 为了避免你也在这些坑里打转&…

项目管理进阶:56页大型IT项目管理实践经验分享【附全文阅读】

此文档为大型IT项目管理实践经验分享目录概览,主要包含以下核心内容: 1. **整体介绍**:阐述了项目管理在IT领域的重要性,特别是针对产品经理与开发人员间的冲突和挑战,提出通过项目管理方法来提升工作效率。目标受众为…

一种在SQL Server中传递多行数据的方法

这是一种比较偷懒的方法,其实各种数据库对Json 支持的很好。sql server 、oracle都不错。所以可以直接传json declare 这是一个json varchar(max) set 这是一个json{"data":[{"code":"1","name":"啥1"},{"…

SOC-ESP32S3部分:25-HTTP请求

飞书文档https://x509p6c8to.feishu.cn/wiki/KL4RwxUQdipzCSkpB2lcBd03nvK HTTP(Hyper Text Transfer Protocol) 超文本传输协议,是一种建立在 TCP 上的无状态连接,整个基本的工作流程是客户端发送一个 HTTP 请求,说明…

【音视频】H265 NALU分析

1 H265 概述 H264 与 H265 的区别 传输码率:H264 由于算法优化,可以低于 2Mbps 的速度实现标清数字图像传送;H.265 High Profile 可实现低于 1.5Mbps 的传输带宽下,实现 1080p 全高清视频传输。 编码架构:H.265/HEVC…

第十二节:第四部分:集合框架:List系列集合:LinkedList集合的底层原理、特有方法、栈、队列

LinkedList集合的底层原理 LinkedList集合的应用场景之一 代码:掌握LinkedList集合的使用 package com.itheima.day19_Collection_List;import java.util.LinkedList; import java.util.List;//掌握LinkedList集合的使用。 public class ListTest3 {public static …

用 Whisper 打破沉默:AI 语音技术如何重塑无障碍沟通方式?

网罗开发 (小红书、快手、视频号同名) 大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等…

实现Cursor + Pycharm 交互

效果演示: 直接可以在cursor或Pycharm中点击右键点击,然后就可以跳转到另一个应用的对应位置了 使用方法: 分别在两个应用中安装插件【Switch2Cursor Switch2IDEA,这两个插件分别安装在 IDEA 和 Cursor 中】: Switc…