三维模型如何外轮廓展示
1、第一步 提取模型外轮廓进入小红砖开放平台,通过调用接口,直接提取模型外轮廓。具体接口,在页面下端相关接口中展示。所需代码:fetch(`${origin}/models/${fileKey}/outlines/!parse?level=1&enforce=true&devcode=${devcode}`)
2、第二步 获取外轮廓构件列表通过调用接口,直接获取外轮廓构件的列表。具体接口,在页面下端相关接口中展示。所需代码:// 数据接口:根据层级获取袷蜍滇刷模型外轮廓构件const getOutlineComponentByLevel = (id, level) => { return fetch(`${op.host}/models/${id}/outlines?devcode=${devcode}&level=${level}`) .then(response => response.json()) .then(data => { if (data.code === 2000 && data.message === "成功") { return data; } else { BIMWINNER.BOS3D.message("error", `出错了,错误代码为:${data.code}`, false); } }) .catch(e => console.error("出错了!错误为:", e)) }
3、第三步 展示外轮廓将获取的外轮廓构件展示出来所需代码:// 主函数const init = (filekey) => { // 获取模型外轮廓构件 getOutlineComponentByLevel(filekey, 1).then((data) => { outlineComponents = data.data; viewer3D.addView(modelKey, devcode); }); // 监听模型加载完成 viewer3D.getViewerImpl(). modelManager. addEventListener(BIMWINNER.BOS3D.EVENTS.ON_LOAD_COMPLETE, function (event) { addRestorButton(); viewer3D.hideAllComponents(); viewer3D.showComponentsByKey(outlineComponents); }); }
4、应用场景模型外轮廓主要应用于大场景、大建筑群加载需求中,例如在智慧园区、智慧城市的展示与应用中,大部分的场景加载都是用白模代替 BIM 模型,严重影响了美观与3D模拟的真实性,但是如果将全部模型加载至界面中,又会导致大量不可见构件的加载从而影响使用效率。建筑外轮廓构件集则解决了上述问题,既将模型轻量化展示,又可以满足大量建筑同时展示的需求。