Babylon.js 第34章 合并网格

本文介绍了Babylon.js中如何合并网格,通过详细内容讲解了合并网格的方法,包括参数设置和注意事项。文章还提到了在处理克隆网格时的特殊步骤,以及使用CSG类构造复杂形状的技巧,如创建具有内径和外径的管道形状。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

目录

一、合并网格方法

二、详细内容


一、合并网格方法

轻松地将多个网格合并到单个网格,请使用类的MergeMeshes静态Mesh

var newMesh = BABYLON.Mesh.MergeMeshes(options)

options的参数:

属性 描述
arrayOfMeshes 一组网格。它们都应该是相同的材料。
disposeSource(可选) 当为 true(默认)时,源网格将在完成后被处理。
allow32BitsIndices(可选) 当顶点的总和 > 64k 时,必须将其设置为 true。
meshSubclass 可选) 设置后,顶点插入此网格。然后可以将网格合并到一个网格子类中。
subdivideWithSubMeshes(可选) 当为真(默认为假)时,将网格细分为具有网格源的子网格数组。
CREATE TABLE `t_protocol` ( `N_PROTOCOL_ID` int NOT NULL AUTO_INCREMENT COMMENT '协议ID,自增主键', `N_PROJECT_ID` int NOT NULL COMMENT '项目ID,不能为空,指明所属项目', `VC_NAME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '协议名称,不能为空', `VC_VERSION` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '版次号,如V3.01,不能为空', `D_CREATE` datetime NOT NULL COMMENT '创建时间,不能为空,系统创建时的时间', `N_STATUS` tinyint NOT NULL COMMENT '发布状态,0=未发布,1=已发布,已发布协议不能再编辑', `D_RELEASE` datetime DEFAULT NULL COMMENT '发布时间,允许为空,发布时的系统时间', `VC_EXCEL_PATH` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '协议文件存放路径,允许为空,存放发布的Excel协议文件路径', `VC_XML_PATH` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '数据字典文件路径,允许为空,存放发布的数据字典文件路径', `VC_DESC` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '协议简述,允许为空,当前版次协议的简短描述', PRIMARY KEY (`N_PROTOCOL_ID`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; CREATE TABLE `t_frame` ( `N_FRAME_ID` int NOT NULL AUTO_INCREMENT COMMENT '帧ID,自增主键', `N_PROTOCOL_ID` int NOT NULL COMMENT '协议ID,引用协议信息表,指明所属协议', `N_FRAMEHEAD_ID` int NOT NULL COMMENT '帧结构ID,引用帧结构信息表,指明使用的帧结构', `N_FRAME_IDCODE` int NOT NULL COMMENT '帧标识,帧识别码,如0x91,不能为空', `VC_NAME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '帧名,数据帧名称,如“91帧”', `VC_DESC` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '简述,帧的简单描述,如“飞行参数”、“导航参数”,可为空', PRIMARY KEY (`N_FRAME_ID`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; @Data @TableName("t_protocol") public class Protocol { @TableId(value = "N_PROTOCOL_ID", type = IdType.AUTO) private Integer nProtocolId; @TableField("N_PROJECT_ID") private Integer nProjectId; @TableField("VC_NAME") private String vcName; @TableField("VC_VERSION") private String vcVersion; @TableField("D_CREATE") private LocalDateTime dCreate; // 使用字符串类型 @TableField("N_STATUS") private Integer nStatus; @TableField("D_RELEASE") private LocalDateTime dRelease; // 使用字符串类型 @TableField("VC_EXCEL_PATH") private String vcExcelPath; @TableField("VC_XML_PATH") private String vcXmlPath; @TableField("VC_DESC") private String vcDesc; // 新增关联对象 @TableField(exist = false) // 不是数据库字段 private Project project; }@Data @TableName("t_frame") public class Frame { @TableId(value = "N_FRAME_ID", type = IdType.AUTO) private Integer nFrameId; @TableField("N_PROTOCOL_ID") private Integer nProtocolId; @TableField("N_FRAMEHEAD_ID") private Integer nFrameheadId; @TableField("N_FRAME_IDCODE") private Integer nFrameIdcode; @TableField("VC_NAME") private String vcName; @TableField("VC_DESC") private String vcDesc; } 写一个根据根据N_PROTOCOL_ID,返回N_FRAME_ID,N_FRAMEHEAD_ID的接口(用xml,不用basemapper),springboot3
最新发布
03-31
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值