MCPcopy Create free account
hub / github.com/Robbyant/lingbot-map / render

Method render

demo_render/interactive_viewer/server.py:363–398  ·  view source on GitHub ↗

Render current view and return JPEG bytes.

(self, jpeg_quality: int = 80)

Source from the content-addressed store, hash-verified

361 self._trail_added = True
362
363 def render(self, jpeg_quality: int = 80) -> bytes:
364 """Render current view and return JPEG bytes."""
365 if self._renderer is None or self.camera is None:
366 return b""
367
368 # With octree LOD, always update geometry (LOD depends on camera pos)
369 if self.octree is not None or self._dirty_geometry:
370 self.update_geometry()
371
372 # Update camera trail
373 self._update_trail_geometry()
374
375 cam = self.camera
376 self._renderer.setup_camera(
377 cam.fov_deg,
378 cam.look_at.astype(np.float64),
379 cam.eye.astype(np.float64),
380 cam.up.astype(np.float64),
381 )
382
383 # EDL: render depth first, then color, then shade
384 if self.edl_enabled:
385 depth = np.asarray(
386 self._renderer.render_to_depth_image(z_in_view_space=True)
387 ).astype(np.float32)
388 img = np.asarray(self._renderer.render_to_image())
389 img = _edl_shade(img, depth, self.edl_strength, self.edl_radius)
390 else:
391 img = np.asarray(self._renderer.render_to_image())
392
393 _, buf = cv2.imencode(
394 ".jpg",
395 cv2.cvtColor(img, cv2.COLOR_RGB2BGR),
396 [cv2.IMWRITE_JPEG_QUALITY, jpeg_quality],
397 )
398 return buf.tobytes()
399
400 def render_screenshot(self, width: int, height: int, output_path: str) -> str:
401 """Render high-res screenshot and save as PNG."""

Callers 2

ws_handlerFunction · 0.80
mainFunction · 0.80

Calls 3

update_geometryMethod · 0.95
_edl_shadeFunction · 0.70

Tested by

no test coverage detected