From d3514da061d92cdfbce0386bb4a4ea38f218e8c6 Mon Sep 17 00:00:00 2001 From: Filippo Luca Ferretti <102977828+flferretti@users.noreply.github.com> Date: Wed, 14 Feb 2024 17:08:16 +0100 Subject: [PATCH] Add static rendering in `MujocoVisualizer` --- src/jaxsim/mujoco/visualizer.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/jaxsim/mujoco/visualizer.py b/src/jaxsim/mujoco/visualizer.py index dac8d1a75..235583d7d 100644 --- a/src/jaxsim/mujoco/visualizer.py +++ b/src/jaxsim/mujoco/visualizer.py @@ -1,6 +1,6 @@ import contextlib import pathlib -from typing import ContextManager +from typing import ContextManager, Sequence, Union import mediapy as media import mujoco as mj @@ -150,3 +150,18 @@ def open( yield handle finally: handle.close() if close_on_exit else None + + def render_static( + self, + height: int = 240, + width: int = 320, + ) -> Union[Sequence[npt.NDArray], npt.NDArray]: + """""" + + renderer = mujoco.Renderer(model=self.model, height=height, width=width) + + data = mujoco.MjData(self.model) or self.data + + mujoco.mj_forward(self.model, data) + renderer.update_scene(data, camera_name) + return renderer.render()