用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/bimface/bimface-helper-skills --skill bimface-helper-v3-3d命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | bimface-helper-v3-3d |
| description | 开发基于BIMFACE的Web应用,用于实现在前端页面上对3D模型的可视化和交互。 |
| version | 1.0.0 |
references/ 目录下对应文档的代码写法,不自行变更接口调用方式识别同步/异步的方法:BIMFACE JSSDK v3 的同步/异步区分很简单——方法参数中包含
callback/回调函数的即为异步(如getComponentProperty),无回调的即为同步(如getBoundingBoxById)。各 reference 文档中有完整示例,调用时参照示例即可。
接收用户需求后,先完成以下步骤再开始编码:
§2 功能模块 找到匹配的 reference 文档getModel(modelId) 指定目标模型所有reference文档统一使用以下变量名,不再逐个声明:
| 变量名 | 类型/说明 | 获取方式 |
|---|---|---|
viewer3D | 3D查看器对象 | app3D.getViewer() |
app3D | WebApplication应用对象 | new Glodon.Bimface.Application.WebApplication3D(config) |
model3D | 3D模型对象 | viewer3D.getModel()(单模型)或 viewer3D.getModel(modelId)(多模型) |
camera3D | 3D相机对象 | viewer3D.getCamera() |
drawableContainer | 标签容器对象 | new Glodon.Bimface.Plugins.Drawable.DrawableContainer(config) |
关键约束:
model3D必须在ViewAdded事件触发后才能获取;多模型场景下必须用viewer3D.getModel(modelId)指定目标模型。
开发完成后逐项检查:
viewer3D / model3D / app3D / camera3D / drawableContainer)getComponentProperty、getFloors、getBoundingBox、loadObject 等)的结果是否在回调函数中处理viewer3D.render()new Glodon.Web.Graphics.Color() 而非裸颜色字符串或数组viewer3D.updateSceneBoundingBox()(避免构件在相机范围外不可见)§3 全局变量命名约定 中声明的"野生变量"| ❌ 错误 | ✅ 正确 |
|---|---|
model.setColor(...) | 不同模块方法名不同:构件着色用 overrideComponentsColorById,房间用 setRoomColor,线框用 setWireframeColor |
筛选条件 {category: "Wall"} | 正确字段名为 categoryId(数字字符串)和 family、levelName,格式见 构件筛选 |
viewer.getModel().setColor(...) | 应使用 model3D.overrideComponentsColorById(ids, color) |
| 外部构件移动后不更新包围盒 | 先调用 viewer3D.updateSceneBoundingBox() 再 render() |
markerContainer.onClick(fn) | marker.onClick(fn) onClick 是单个 Marker3D 对象的方法,不是容器的方法 |