如何在 Forge Viewer 中列出视图(不是相机)?

Posted

技术标签:

【中文标题】如何在 Forge Viewer 中列出视图(不是相机)?【英文标题】:How to list the VIEWs (not cameras) in Forge Viewer? 【发布时间】:2021-12-28 16:06:55 【问题描述】:

通过使用这段代码,我们已经成功地在我们的视图中列出了可用的摄像头:

NOP_VIEWER.model.getData().cameras

这会自动列出所有加载了模型的相机。然而,我们注意到一些模型只有 1 个摄像头,尽管我们看到了更多视图

Model listing 7 views

问题是:我们如何获得这些视图(而不是相机)的列表?

注意:此模型是在 3DS Max 中创建的,然后导出到 SVF。

【问题讨论】:

【参考方案1】:

根据输入文件格式,Model Derivative 服务可以导出许多不同的“可视项”,正如我们所说的那样。例如,对于单个 Revit 文档,该服务可以为每个 3D 视图生成一个可视项,并为每个 2D 图纸生成一个可视项。这可能同样适用于 3dsMax 文件 - 单个视图导出为单独的“可视项”。您可以使用 Model Derivative API 查看所有可视项的列表,例如:

https://forge.autodesk.com/en/docs/model-derivative/v2/reference/http/urn-metadata-GET/,或 https://forge.autodesk.com/en/docs/model-derivative/v2/reference/http/urn-manifest-GET/

【讨论】:

嗨 Petr,是否可以使用模型衍生 API 的结果在 Forge Viewer 上创建相机?这个想法是模仿我们在“共享” 3DSMax 的模型时看到的相同行为,它会生成与内部查看器的链接(这是我附加到问题的图像的来源) 尝试在 Forge 中查看 3ds Max 设计的清单(使用 this endpoint)。它可能包括不同“可视项”的相机信息。 我无法使用我们目前拥有的 URN 运行模型衍生 API(它不断给出 BadRequest)。请注意,我们一开始没有使用 Model Derivative API 转换模型,而是使用 3DMax 导出到 SVF。你知道它是否应该在这种情况下工作?注意:当我们使用使用 Model Derivative API 翻译的另一个模型的 URN 运行 Model Derivative API 时,它确实有效。 啊,好吧,在这种情况下,这可能是 3dsMax 到 SVF 提取的一些特定行为。不幸的是,我不熟悉那个。

以上是关于如何在 Forge Viewer 中列出视图(不是相机)?的主要内容,如果未能解决你的问题,请参考以下文章

在 Forge Viewer 中查看 Revit 平面图(2D 视图)

Forge Viewer:可点击对象的唯一 ID

需要 Forge Viewer 和 Gyroscope 的帮助。需要将初始相机位置固定到 Bim 模型中的当前视图

如何在 forge-viewer 中从最新版本的 three.js 添加几何图形?

如何在 Forge Viewer 中激活“Autodesk.MemoryLimited”扩展?

如何使用Forge Viewer在revit文件中显示项目?