Skip to content

When the model data is large, switching between different display modes of the model does not synchronize with the trame__busy state, leading to subsequent issues. #45

@Brandon-Xu

Description

@Brandon-Xu

There are two main problems:

When using trame-vtklocal, if operations such as showing/hiding the model, adjusting transparency, or modifying properties are performed, and the model is relatively large, the trame__busy indicator may reset to zero—indicating that data transmission is complete—but the changes still take a moment to actually appear. This issue does not occur when using trame-vtk or PyVistaLocalView.

I found that setting the eager_sync attribute to True can avoid the first problem, but it introduces a new issue. For example, when toggling the visible property frequently, each time the model is shown, the displayed model gradually becomes distorted—appearing as if parts are missing and colors become increasingly monotone. However, these issues only occur when the model data is large; with smaller models, everything behaves normally.

The image below illustrates the behavior when I only toggle the visible property. Each time it is toggled, the displayed content loses more detail. After four toggles, it appears as shown in Figure 4 and no longer changes.

Image Image Image Image

I am using VTK, not PyVista. The relevant view code is as follows:

 vtklocal.LocalView(
    self.store.model_processing_plotter.render_window,
    config={"rendering": 'webgpu', "exec": 'async', "wasmBaseName": 'vtk'},
    cache_size=("cache", 0),
    eager_sync=False/True,
)

trame>=3.10.0
trame-client>=3.11.2
trame-server>=3.6.3
trame-vtklocal>=0.15.2
vtk==9.5.2

windows 10
python 3.11

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions