2
2
from wslink import register as export_rpc
3
3
from wslink .websocket import LinkProtocol
4
4
5
- from vtkmodules .vtkMarshallingManager import vtkObjectManager
5
+ from vtkmodules .vtkSerializationManager import vtkObjectManager
6
6
7
7
__all__ = [
8
8
"serve" ,
15
15
serve_path = str (Path (__file__ ).with_name ("serve" ).resolve ())
16
16
serve = {"__trame_vtklocal" : serve_path }
17
17
module_scripts = [
18
- "__trame_vtklocal/wasm/vtkObjectManager.js " ,
18
+ "__trame_vtklocal/wasm/vtkSceneManager-9.3.mjs " ,
19
19
]
20
20
scripts = [
21
21
"__trame_vtklocal/js/trame_vtklocal.umd.js" ,
@@ -39,28 +39,35 @@ def __init__(self, *args, **kwargs):
39
39
self .vtk_object_manager = vtkObjectManager ()
40
40
self .vtk_object_manager .Initialize ()
41
41
42
+ self ._debug_state = False
43
+ self ._debug_state_counter = 1
44
+
42
45
def update (self ):
43
46
self .vtk_object_manager .UpdateStatesFromObjects ()
47
+ if self ._debug_state :
48
+ self .vtk_object_manager .DumpGlobalState (
49
+ f"snapshot-{ self ._debug_state_counter } "
50
+ )
51
+ self ._debug_state_counter += 1
44
52
45
53
@property
46
54
def active_ids (self ):
47
55
return self .vtk_object_manager .GetAllDependencies ("" )
48
56
49
57
@export_rpc ("vtklocal.get.state" )
50
58
def get_state (self , obj_id ):
51
- print (f"get_state { obj_id } " )
59
+ # print(f"get_state {obj_id} {self.vtk_object_manager.GetObjectAtId(obj_id).GetClassName() }")
52
60
state = self .vtk_object_manager .GetState (obj_id )
53
- # print(state)
54
61
return state
55
62
56
63
@export_rpc ("vtklocal.get.hash" )
57
64
def get_hash (self , hash ):
58
- print ("get_hash" , hash )
65
+ # print("get_hash", hash)
59
66
return self .addAttachment (memoryview (self .vtk_object_manager .GetBlob (hash )))
60
67
61
68
@export_rpc ("vtklocal.get.status" )
62
69
def get_status (self , obj_id ):
63
- print ("get_status" , obj_id )
70
+ # print("get_status", obj_id)
64
71
ids = self .vtk_object_manager .GetAllDependencies (obj_id )
65
72
hashes = self .vtk_object_manager .GetBlobHashes (ids )
66
73
renderWindow = self .vtk_object_manager .GetObjectAtId (obj_id )
0 commit comments