BIM360 Docs 默认将generateMasterViews 设置为true,因此无需通过 Forge Model Derivative API(不是数据管理 API)对 BIM360 执行此操作。
BIM360 的查看器称为 BIM360 Viewer,它构建在 Forge Viewer 之上,但并非 Forge Viewer 的所有功能都包含在 BIM360 Viewer 中。 (见BIM 360 Viewer vs Forge Viewer)
回到你的问题,
您能否尝试使用此查看器代码加载您看不到房间的模型?
var options = {
env: 'MD20Prod' + (atob(urn.replace('urn:', '').replace('_', '/')).indexOf('emea') > -1 ? 'EU' : 'US'),
api: 'D3S',
getAccessToken: getForgeToken
};
if (LMV_VIEWER_VERSION >= '7.48') {
options.env = 'AutodeskProduction2';
options.api = 'streamingV2' + (atob(urn.replace('urn:', '').replace('_', '/')).indexOf('emea') > -1 ? '_EU' : '');
}
Autodesk.Viewing.Initializer(options, () => {
viewer = new Autodesk.Viewing.GuiViewer3D(document.getElementById('forgeViewer'));
viewer.start();
var documentId = 'urn:' + urn;
Autodesk.Viewing.Document.load(documentId, onDocumentLoadSuccess, onDocumentLoadFailure);
});
function onDocumentLoadSuccess(doc) {
const root = doc.getRoot();
const viewables = root.search({'type':'geometry', 'role': '3d'});
console.log('Viewables:', viewables);
const phaseViews = viewables.filter(v => v.data.name === v.data.phaseNames && v.getViewableRootPath().includes('08f99ae5-b8be-4f8d-881b-128675723c10'));
console.log('Master Views:', phaseViews);
viewer.loadDocumentNode(doc, phaseViews[0], { skipHiddenFragments: false }).then(model => {
// any additional action here?
console.log({
'LMV version': LMV_VIEWER_VERSION
});
});
}
function onDocumentLoadFailure(viewerErrorCode) {
console.error('onDocumentLoadFailure() - errorCode:' + viewerErrorCode);
}
参考:https://github.com/yiskang/forge-viewhubmodels-nodejs-svf2/blob/main/public/js/ForgeViewer.js