|
2 | 2 | import vtk |
3 | 3 | from addonModules.addonStyle import ( |
4 | 4 | HighlightPickedActorStyle, |
5 | | - RegisterClasses_addonStyle, |
6 | 5 | ) # type: ignore |
7 | 6 |
|
8 | 7 | from trame.app import get_server |
9 | 8 | from trame.ui.html import DivLayout |
10 | 9 | from trame.widgets import html, client, vtklocal |
11 | 10 | from trame.decorators import TrameApp |
12 | 11 |
|
| 12 | +VTK_VERSION = vtk.vtkVersion() |
| 13 | +# needed for vtk < 9.5.20250920 |
| 14 | +MANUAL_SERDES_REGISTRATION_NEEDED = ( |
| 15 | + VTK_VERSION.GetVTKMajorVersion() <= 9 |
| 16 | + and VTK_VERSION.GetVTKMinorVersion() <= 5 |
| 17 | + and VTK_VERSION.GetVTKBuildVersion() < 20250920 |
| 18 | +) # https://gitlab.kitware.com/vtk/vtk/-/merge_requests/12426 |
| 19 | + |
| 20 | +if MANUAL_SERDES_REGISTRATION_NEEDED: |
| 21 | + from addonModules.addonStyle import RegisterClasses_addonStyle # noqa: E402 |
| 22 | + |
13 | 23 | FULL_SCREEN = "position:absolute; left:0; top:0; width:100vw; height:100vh;" |
14 | 24 | TOP_RIGHT = "position: absolute; top: 1rem; right: 1rem; z-index: 10;" |
15 | 25 | TOP_LEFT = "position: absolute; top: 1rem; left: 1rem; z-index: 10;" |
@@ -110,7 +120,9 @@ def _build_ui(self): |
110 | 120 | with html.Div(style=FULL_SCREEN): |
111 | 121 | with vtklocal.LocalView( |
112 | 122 | self.render_window, |
113 | | - addon_serdes_registrars=[RegisterClasses_addonStyle], |
| 123 | + addon_serdes_registrars=[RegisterClasses_addonStyle] |
| 124 | + if MANUAL_SERDES_REGISTRATION_NEEDED |
| 125 | + else [], |
114 | 126 | wasm_dir=WASM_DIR, |
115 | 127 | wasm_base_name=WASM_BASE_NAME, |
116 | 128 | ) as view: |
|
0 commit comments