Autodesk Forge Viewer-选择大量元素性能

问题描述

我在Autodesk Forge Viewer中加载了一个大型联合模型(来自多个IFC文件的约300k元素)。我正在像这样进行跨模型(汇总)选择:

var selection = [{model1 : [ids...]},{model2 : [ids...]},{model3: [ids...]},etc...);
viewer.impl.selector.setAggregateSelection(selection);

现在,鉴于所选元素的数量达到100k +,这会将UI冻结了几秒钟,然后所有元素在查看器中突出显示后,查看器的性能(fps)就会大大降低。切换到隔离而不是选择(突出显示)可以提高查看器的性能,但在执行操作时仍会冻结UI几秒钟。

进行这些大选择时是否有任何性能提示,选择/隔离过程是否可以异步进行,以使UI响应更快?

欢呼

解决方法

恐怕选择机制(状态切换和渲染)都没有针对此类数字进行优化,因此您无法自行对其进行优化。这将需要在内部查看器实现中进行代码更新。

但是,在将其传递给工程团队之前,我想问一下您的实际用例。选择功能通常用于将用户的注意力吸引到设计中的一个(或少量)元素上,或允许用户选择一个(或少量)元素进行一些进一步处理。但是,选择100k +个元素,然后选择所选的100k +个元素继续使用查看器?您究竟需要什么呢?您是否考虑过使用查看器的其他功能,例如theming colors