仅在查询 属性 数据库后加载 属性 数据库或取消模型加载

Only load Property Database or Cancel Model load after querying Property Database

在我们的应用程序中,我们将大型模型加载到查看器中并在移动设备上遇到问题。我们决定创建视图来分解我们的模型,然后在需要时加载正确的可视项。不过,我们至少需要查询整个模型一次,而且我们 运行 遇到了问题。

一个问题是我想加载几何,只加载属性数据库,能够使用getBulkProperties和其他 model 方法。

是否有仅加载 属性 数据库的选项?

相反:const options = { skipPropertyDb: true}

如果那不可能,还有另一种解决方案,但我有一个问题。工作流程:

  1. 加载模型
  2. 等待对象树
  3. 查询我们需要的属性
  4. 取消模型加载

属性 查询结果相对较快,因为我不需要等待所有几何图形加载。问题是查看器不会停止加载,当我尝试使用 viewer.tearDown(); viewer.finish(); 取消加载时,我得到了很多 Cannot read property 'findMaterial' of null(来自 SvfLoader.js)。我也试过 viewer.impl.cancelLoad(e) 但没有任何效果。

我们如何正确取消正在进行的模型加载?

最后,使用模型导数从服务器查询模型不是一个选项。

Viewer 并没有完全为此目的而剪裁(数据导航)所以我建议下载 属性 数据库并创建您自己的 UI - 请参阅 here详情。

但是,如果您坚持也许只尝试类似于 skipProperty 的方法,并且只加载一个节点(几何)- 观看现场演示 here