Skip to content

Commit d970298

Browse files
committed
feat(wasm): use vtkSceneManager
1 parent 6243b23 commit d970298

File tree

10 files changed

+59
-11129
lines changed

10 files changed

+59
-11129
lines changed

.codespellrc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
[codespell]
2-
skip = **/package-lock.json,**/vtkObjectManager.js
2+
skip = **/package-lock.json,**/vtkSceneManager-9.3.mjs

examples/vtk/glyph.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -130,8 +130,8 @@ def ctrl(self):
130130
def on_resolution_change(self, resolution, **kwargs):
131131
self.cone.SetResolution(int(resolution))
132132
self.sphere.SetStartTheta(int(resolution) * 6)
133-
self.view_local.update()
134133
self.view_remote.update()
134+
self.view_local.update()
135135

136136
def reset_camera(self):
137137
self.renderer.ResetCamera()

trame_vtklocal/module/__init__.py

Lines changed: 13 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
from wslink import register as export_rpc
33
from wslink.websocket import LinkProtocol
44

5-
from vtkmodules.vtkMarshallingManager import vtkObjectManager
5+
from vtkmodules.vtkSerializationManager import vtkObjectManager
66

77
__all__ = [
88
"serve",
@@ -15,7 +15,7 @@
1515
serve_path = str(Path(__file__).with_name("serve").resolve())
1616
serve = {"__trame_vtklocal": serve_path}
1717
module_scripts = [
18-
"__trame_vtklocal/wasm/vtkObjectManager.js",
18+
"__trame_vtklocal/wasm/vtkSceneManager-9.3.mjs",
1919
]
2020
scripts = [
2121
"__trame_vtklocal/js/trame_vtklocal.umd.js",
@@ -39,28 +39,35 @@ def __init__(self, *args, **kwargs):
3939
self.vtk_object_manager = vtkObjectManager()
4040
self.vtk_object_manager.Initialize()
4141

42+
self._debug_state = False
43+
self._debug_state_counter = 1
44+
4245
def update(self):
4346
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
4452

4553
@property
4654
def active_ids(self):
4755
return self.vtk_object_manager.GetAllDependencies("")
4856

4957
@export_rpc("vtklocal.get.state")
5058
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()}")
5260
state = self.vtk_object_manager.GetState(obj_id)
53-
# print(state)
5461
return state
5562

5663
@export_rpc("vtklocal.get.hash")
5764
def get_hash(self, hash):
58-
print("get_hash", hash)
65+
# print("get_hash", hash)
5966
return self.addAttachment(memoryview(self.vtk_object_manager.GetBlob(hash)))
6067

6168
@export_rpc("vtklocal.get.status")
6269
def get_status(self, obj_id):
63-
print("get_status", obj_id)
70+
# print("get_status", obj_id)
6471
ids = self.vtk_object_manager.GetAllDependencies(obj_id)
6572
hashes = self.vtk_object_manager.GetBlobHashes(ids)
6673
renderWindow = self.vtk_object_manager.GetObjectAtId(obj_id)

0 commit comments

Comments
 (0)