Skip to content

Commit 236d3e0

Browse files
committed
fix(import): fix import file name
1 parent 136e141 commit 236d3e0

File tree

3 files changed

+29
-2
lines changed

3 files changed

+29
-2
lines changed

examples/01_vtk/vtk_cone_simple.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
# Required for rendering initialization, not necessary for
22
# local rendering, but doesn't hurt to include it
33
import asyncio
4+
import time
45

56
import vtkmodules.vtkRenderingOpenGL2 # noqa
67
from trame.app import TrameApp, asynchronous
@@ -39,13 +40,20 @@
3940
"""
4041

4142

43+
def time_now_ms() -> int:
44+
return int(time.time_ns() / 1000000)
45+
46+
4247
class ConeApp(TrameApp):
4348
def __init__(self, server=None):
4449
super().__init__(server)
4550

4651
self.server.cli.add_argument("--encoder", default="turbo-jpeg") # jpeg
4752
args, _ = self.server.cli.parse_known_args()
4853
self.state.encoder = args.encoder
54+
self.state.stats = None
55+
self.state.stats_display = ""
56+
self.max_dt = 0
4957

5058
self.render_window, self.cone_source = self.setup_vtk()
5159
self.build_ui()
@@ -81,6 +89,20 @@ async def _animate(self):
8189
self.view_handler.update()
8290
await asyncio.sleep(1 / int(self.state.target_fps))
8391

92+
@change("stats")
93+
def on_stats(self, stats, **_):
94+
if stats is None:
95+
self.state.stats_display = ""
96+
return
97+
98+
now = time_now_ms()
99+
ds = now - stats.get("st")
100+
self.max_dt = max(self.max_dt, ds)
101+
fps = stats.get("fps")
102+
self.state.stats_display = (
103+
f"round-trip: {int(ds)} [{self.max_dt}] ms - fps: {fps}"
104+
)
105+
84106
@change("playing")
85107
def on_playing(self, playing, **_):
86108
if playing:
@@ -89,6 +111,7 @@ def on_playing(self, playing, **_):
89111
@change("target_fps")
90112
def on_target_fps(self, target_fps, **_):
91113
self.view_handler.target_fps = target_fps
114+
self.max_dt = 0
92115

93116
@change("max_pixel_count")
94117
def on_max_pixel_count(self, max_pixel_count, **_):
@@ -112,6 +135,8 @@ def build_ui(self):
112135
footer.add_child("Quality ({{quality[0]}}/{{quality[1]}})")
113136
v3.VSpacer()
114137
footer.add_child("Encoder ({{encoder}})")
138+
v3.VSpacer()
139+
footer.add_child("{{ stats_display }}")
115140

116141
with layout.toolbar:
117142
v3.VSpacer()
@@ -205,6 +230,8 @@ def build_ui(self):
205230
with client.SizeObserver("size"):
206231
view = rca.RemoteControlledArea(
207232
display="image",
233+
monitor="10",
234+
stats="stats = $event",
208235
)
209236
self.view_handler = view.create_view_handler(
210237
self.render_window,

vue-components/src/components/ImageDisplayArea.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { FPSMonitor } from '../utils/FpsMonitor';
1+
import { FPSMonitor } from '../utils/FPSMonitor';
22

33
class ImageFrame {
44
constructor(vueComponent) {

vue-components/src/components/StatisticsDisplay.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { FPSMonitor } from '../utils/FpsMonitor';
1+
import { FPSMonitor } from '../utils/FPSMonitor';
22

33
const UNITS = ['B/s', 'KB/s', 'MB/s'];
44

0 commit comments

Comments
 (0)