MCPcopy Create free account
hub / github.com/TheMariday/marimapper / VisualiseProcess

Class VisualiseProcess

marimapper/visualize_process.py:24–155  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

22
23
24class VisualiseProcess(Process):
25
26 def __init__(self):
27 logger.debug("Renderer3D initialising")
28 super().__init__()
29 self._vis = None
30 self._input_queue = Queue3D()
31 self._exit_event = Event()
32 self.point_cloud = None
33 self.line_set = None
34 self.strip_set = None
35 self.daemon = True
36 logger.debug("Renderer3D initialised")
37
38 def get_input_queue(self) -> Queue3D:
39 return self._input_queue
40
41 def stop(self):
42 self._exit_event.set()
43
44 def run(self):
45 logger.debug("Renderer3D process starting")
46 initialised = False
47
48 while not self._exit_event.is_set():
49
50 if not self._input_queue.empty():
51 leds = self._input_queue.get()
52 if len(leds) < 9:
53 continue
54
55 if not initialised:
56 self.initialise_visualiser__()
57 self.reload_geometry__(leds, True)
58 initialised = True
59 else:
60 self.reload_geometry__(leds)
61
62 if initialised:
63 self._vis.poll_events()
64 self._vis.update_renderer()
65 time.sleep(1 / 60)
66 else:
67 time.sleep(1)
68
69 def initialise_visualiser__(self):
70 logger.debug("Renderer3D process initialising visualiser")
71
72 self._vis = (
73 open3d.visualization.Visualizer()
74 ) # This needs to be updated to O3DVisualizer
75 self._vis.create_window(
76 window_name="MariMapper",
77 width=640,
78 height=640,
79 )
80
81 view_ctl = (

Callers 1

__init__Method · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected