forge viewer 如何加载多模型到查看器中
时间: 2024-03-25 15:36:03 浏览: 130
viewer-snap:使用Autodesk Forge Viewer进行采样以将不同的AC单元捕捉到墙壁或地板上
要加载多个模型到 Forge Viewer 中,可以按照以下步骤进行操作:
1. 首先,使用 Forge 提供的 Model Derivative API 将各个模型转换为 SVF 格式(或其他支持的格式)。
2. 将每个模型的 URN(唯一资源名称)保存下来。
3. 在 Viewer 中,使用 Viewer3D 对象的 loadDocumentNode 方法加载第一个模型,该方法需要传入 URN 和要加载的节点 ID。
4. 对于每个附加模型,使用 Viewer3D 对象的 loadModel 方法加载模型,该方法需要传入 URN 和一个回调函数,在回调函数中将新模型添加到场景中。
以下是示例代码:
```
var viewer;
function loadInitialModel() {
var urn = 'first-model-urn';
var nodeId = 1;
Autodesk.Viewing.Initializer(options, function() {
viewer = new Autodesk.Viewing.Viewer3D(document.getElementById('viewer'));
viewer.loadDocumentNode(urn, nodeId);
});
}
function loadAdditionalModel() {
var urn = 'additional-model-urn';
Autodesk.Viewing.Document.load(urn, function(doc) {
var geometryItems = Autodesk.Viewing.Document.getSubItemsWithProperties(doc.getRootItem(), {
'type': 'geometry',
'role': '3d'
}, true);
if (geometryItems.length > 0) {
var item = geometryItems[0];
viewer.loadModel(doc.getViewablePath(item), function(model) {
viewer.impl.addModel(model);
});
}
}, function(error) {
console.log(error);
});
}
```
注意,以上代码仅供参考,具体实现方式可能会因应用场景和需求而有所不同。
阅读全文