0

因为项目需求,刚接触forge不久,

目前我已经将rvt模型转换为svf格式并且离线导出至我本地,

然后通过viewer.loadModel('static/model/xxx/Resource/____/_3D_ 1562931/_3D_.svf')这样加载模型, 因为客户提供的模型文件是分散的,所以需要再次调用viewer.loadModel加载多个类似的模型,

那么问题来了,

  1. 加载后在 viewer 的实例上 (通过Autodesk.Viewing.Private.GuiViewer3D构造),访问 viewer.model,只能得到第一个模型,无法获取到当前已经加载的所有模型,这个问题可以通过加载成功后的回调来自行记录所有模型,但是想问问ForgeViwer官方有没有提供管理多个模型的接口呢?
  2. 多个模型的情况下,下方工具栏的 “模型浏览器” 功能只能显示第一个模型的信息, 有没有办法在多模型的情况下,将模型部件树再加一层模型的选择
  3. 通过 viewer.getSelection也无法获取到其他模型选择的部件,依然只能获取到第一个模型的已选部件

1个回答

1

已采纳

您问题的回答分别如下:

  1. 可以通过 viewer.impl.modelQueue().getModels() 获取其他载入的模型,「连结」
  2. Forge Viewer 4.0 以上版本的 “模型浏览器” 已经有支持显示多模型了,「连结
  3. 可以通过 viewer.getAggregateSelection() 获取,「连结」

撰写答案