Threejs墙体挖洞做门或窗

在使用Threejs代码构建的展厅中,需要在一面墙中间挖个洞作为门或窗户,效果如下:

引入ThreeBSP.js

<script src="plugins/three/ThreeBSP.js"></script>

创建

    // 1 定义墙面var cubeGeometry = new THREE.BoxGeometry(184.8, 40, 2.4);var cube = new THREE.Mesh(cubeGeometry);// 2 定义窗户门var door = new THREE.BoxGeometry(60, 35, 2.4);var doorMesh = new THREE.Mesh(door);doorMesh.position.y = -8// 3 定义两个bsp对象var cubeBSP = new ThreeBSP(cube);var doorBSP = new ThreeBSP(doorMesh);// 4 取交集let resultBSP = cubeBSP.subtract(doorBSP); // 墙体挖窗户门// 5 将相交的部分转换成Meshlet result = resultBSP.toMesh();// 6 转成geometryvar cubeGeometry = result.geometryvar cubeMaterial = [new THREE.MeshBasicMaterial({ color: 0xe9e9e9 }),  //右new THREE.MeshBasicMaterial({ color: 0xe9e9e9 }),new THREE.MeshBasicMaterial({ color: 0xe9e9e9 }),  //上 new THREE.MeshBasicMaterial({ color: 0xe9e9e9 }),new THREE.MeshBasicMaterial({ color: 0xe9e9e9 }),new THREE.MeshBasicMaterial({ color: 0xe9e9e9 }),]// 7 重新生成一个mesh let wallMesh = new THREE.Mesh(cubeGeometry, cubeMaterial);wallMesh.position.set(0, 5, 71.8)scene.add(wallMesh);

即实现在墙体上挖个洞作为门或窗户

其中ThreeBSP.js下载地址:https://download.csdn.net/download/qq_33298964/89400806

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/22894.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

今日代码大赏 | Spring Cloud Gateway 全局过滤器实现

在构建微服务架构时&#xff0c;Spring Cloud Gateway 作为服务网关&#xff0c;承担着路由转发、权限校验等职责。 全局过滤器&#xff08;Global Filter&#xff09;是 Spring Cloud Gateway 中用于处理跨服务的通用逻辑的组件&#xff0c;例如权限验证、日志记录等。 下面…

使用 LiteGraph.js 构建可视化工作流图

本文由ScriptEcho平台提供技术支持 项目地址&#xff1a;传送门 使用 LiteGraph.js 构建可视化工作流图 应用场景介绍 LiteGraph.js 是一个轻量级的开源 JavaScript 库&#xff0c;用于构建可视化工作流图。它广泛应用于游戏开发、数据可视化、交互式叙事等领域。 代码基本…

【HarmonyOS】应用通知广播的使用

【HarmonyOS】应用通知广播的使用 一、通知广播是什么&#xff1f; 应用开发多年的同学&#xff0c;对于时间通知广播是比较熟悉。一般刚接触的同学可能不太清楚&#xff0c;下面简单介绍一下&#xff0c;了解的同学可以跨过&#xff0c;直接看第二节。 通知广播&#xff0c;…

2024会声会影激活码免费注册码大揭秘!

在当今数字化时代&#xff0c;视频编辑已经成为了许多人日常生活和工作中不可或缺的一部分。无论是制作短视频、Vlog还是专业影视剪辑&#xff0c;一款优秀的视频编辑软件都能让我们事半功倍。而市面上众多的视频编辑软件中&#xff0c;会声会影无疑是备受瞩目的一款。本文将为…

【全开源】知识库文档系统(ThinkPHP+FastAdmin)

&#x1f4da;知识库文档系统&#xff1a;解锁知识的无限可能 一款基于ThinkPHPFastAdmin开发的知识库文档系统&#xff0c;可用于企业工作流程的文档管理&#xff0c;结构化记录沉淀高价值信息&#xff0c;形成完整的知识体系&#xff0c;能够轻松提升知识的流转和传播效率&a…

短剧出海的第一桶金

经过了第一套短剧出海H5系统的不好体验的经历&#xff0c;敏锐地发现海外短剧出海系统的需求量很大。很多做国内短剧平台的企业&#xff0c;和一些创业者&#xff0c;都有搭建自己平台的想法。 反思与痛点 H5系统的痛点&#xff1a; 底层框架问题&#xff1a; 问题&#xff1…

2024.06.05【读书笔记】丨生物信息学与功能基因组学(第十一章 分子水平的系统发生和进化 第二部分)【AI测试版】

读书笔记二&#xff1a;《生物信息学与功能基因组学》第十一章第二部分 分子水平上的进化机制深入分析 在《生物信息学与功能基因组学》第十一章的第二部分中&#xff0c;作者进一步深入探讨了分子水平上的进化机制。这包括了对突变、自然选择以及物种生长影响条件的详细讨论…

收银系统源码-千呼新零售2.0【合作案例】

千呼新零售2.0系统是零售行业连锁店一体化收银系统&#xff0c;包括线下收银线上商城连锁店管理ERP管理商品管理供应商管理会员营销等功能为一体&#xff0c;线上线下数据全部打通。 适用于商超、便利店、水果、生鲜、母婴、服装、零食、百货等连锁店使用。 详细介绍请查看下…

英伟达唯一指定液冷散热供应商维谛技术的股价还有巨大的上涨空间

来源&#xff1a;猛兽财经 作者&#xff1a;猛兽财经 在“全球AI风向标”英伟达带来的超额回报影响下&#xff0c;以及华尔街持续看好英伟达后续走势的带动下&#xff0c;美股已经掀起了一场AI“淘金热”。猛兽财经将在本文中详细介绍一下我们之前就非常看好的一家在全球AI产业…

vue的elementUI的el-tree的选择

有一棵树型的数据,需要实现:在外部加一个 全选和不全选的按钮,去全部勾选树结构里面每一项的选框。 当点击勾选全选的时候,树的每一项都勾选; 当取消全选的时候,树的每一项都不勾选; 当选树的其中一项时,全选按钮是半选状态; 实现效果如下: <template><…

动态规划——浅谈dp如何入门,以及入门题目(值得收藏,持续更新)

前言 动态规划如何入门?如果你问我怎么精通,那我只能告诉你我也不知道,但你要问我怎么入门,那我就可以和你说道说道了. 我并没有能力也不想说你看完就会了,我只是想给大家开个头,你只要知道怎么写了怎么去思考了,你就可以通过刷题来强化思维了,能走多远就看各位的造化了! 动…

Python编程学习第一篇——Python零基础快速入门(五)-列表(List)

今天我们来一起学习Python的列表&#xff08;list&#xff09;&#xff0c;Python中的列表&#xff08;List&#xff09;是一种有序、可变的数据结构&#xff0c;可以用来存储多个值。列表可以包含不同类型的数据&#xff0c;例如整数、浮点数、字符串等。以下是关于Python列表…

从头搭hadoop集群--分布式hadoop集群搭建

模板虚拟机安装配置见博文&#xff1a;https://blog.csdn.net/weixin_66158110/article/details/139236148 配置文件信息如下&#xff1a;https://pan.baidu.com/s/1074eD5aNVugEPcjwVvi9jA?pwdl1xq&#xff08;提取码&#xff1a;l1xq&#xff09; hadoop版本&#xff1a;h…

“论软件架构风格”必过范文,突击2024软考高项论文

论文真题 软件体系结构风格是描述某一特定应用领域中系统组织方式的惯用模式。体系结构风格定义一个系统家族&#xff0c;即一个体系结构定义一个词汇表和一纽约束。词汇表中包含一些构件和连接件类型&#xff0c;而这组约束指出系统是如何将这些构件和连接件组合起来的。体系…

慧天卓特:东南亚基于多源遥感的干旱、土壤水分及洪灾、植被指数、火灾监测和空气质量监测分析

概述 亚洲的东南部地理位置具有特殊的意义&#xff0c;是亚洲纬度最低的地区&#xff0c;也处于亚澳之间的过渡地带&#xff0c;属热带季风气候&#xff0c;森林等自然资源丰富&#xff0c;人口稠密&#xff0c;东南亚和南亚地区面临农业生产、环境保护和经济发展的多重挑战&a…

短视频系列内容生产技能提升 沈阳短视频剪辑培训

优势&#xff1a;一、短视频系列化内容的优势 ①可持续性强 某一条视频效果很好(几十万点赞)时&#xff0c;按照相同格式继续输出非常容易成功: √不需要设计脚本&#xff1b; √不需要重新定制。 √稳定性强&#xff0c; ②节约时间成本和制作成本 举例对标账号&#xf…

随身WiFi十大热门品牌优缺点分析!哪个品牌的随身wifi更值得买?随身wifi推荐测评!

格行随身wifi 【品牌特点】&#xff1a;服务好&#xff0c;性价比高&#xff0c;随身WiFi行业的“海底捞” 【优点】&#xff1a;专注物联网行业15年&#xff0c;产品和服务双驱动&#xff0c;综合实力和客户口碑领先 【缺点】&#xff1a;产品相对聚焦&#xff0c;产品类型…

静态页面引入axios,并创建实例使用

CDN 引入 axios&#xff1a; <!DOCTYPE html> <html> <head><title>使用 axios 创建实例对象</title> </head> <body><script src"https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script><scr…

小程序中实现自定义头部导航组件

在页面中实现自定义头部导航的组件&#xff0c;如果仅是单个页面中需要自定义可在页面的json文件中配置"navigationStyle": “custom”&#xff0c;如果是项目中所有页面都想使用自定义的组件&#xff0c;可在app.json的window中全局配置"navigationStyle"…

VUE3 学习笔记(12):对比Vuex与Pinia状态管理的基本理解

在组件传值中&#xff0c;当嵌套关系越来越复杂的时候必然会将混乱&#xff0c;是否可以把一些值存在一个公共位置&#xff0c;无须传值直接调用呢&#xff1f;VUEX应运而生&#xff0c;但是从VUE3开始对VUEX的支持就不那么高了&#xff0c;官方推荐使用Pinia。 Vuex配置 ST1:…