in mujoco_py/mjviewer.py [0:0]
def _create_full_overlay(self):
if self._render_every_frame:
self.add_overlay(const.GRID_TOPLEFT, "", "")
else:
self.add_overlay(const.GRID_TOPLEFT, "Run speed = %.3f x real time" %
self._run_speed, "[S]lower, [F]aster")
self.add_overlay(
const.GRID_TOPLEFT, "Ren[d]er every frame", "Off" if self._render_every_frame else "On")
self.add_overlay(const.GRID_TOPLEFT, "Switch camera (#cams = %d)" % (self._ncam + 1),
"[Tab] (camera ID = %d)" % self.cam.fixedcamid)
self.add_overlay(const.GRID_TOPLEFT, "[C]ontact forces", "Off" if self.vopt.flags[
10] == 1 else "On")
self.add_overlay(
const.GRID_TOPLEFT, "Referenc[e] frames", "Off" if self.vopt.frame == 1 else "On")
self.add_overlay(const.GRID_TOPLEFT,
"T[r]ansparent", "On" if self._transparent else "Off")
self.add_overlay(
const.GRID_TOPLEFT, "Display [M]ocap bodies", "On" if self._show_mocap else "Off")
if self._paused is not None:
if not self._paused:
self.add_overlay(const.GRID_TOPLEFT, "Stop", "[Space]")
else:
self.add_overlay(const.GRID_TOPLEFT, "Start", "[Space]")
self.add_overlay(const.GRID_TOPLEFT,
"Advance simulation by one step", "[right arrow]")
self.add_overlay(const.GRID_TOPLEFT, "[H]ide Menu", "")
if self._record_video:
ndots = int(7 * (time.time() % 1))
dots = ("." * ndots) + (" " * (6 - ndots))
self.add_overlay(const.GRID_TOPLEFT,
"Record [V]ideo (On) " + dots, "")
else:
self.add_overlay(const.GRID_TOPLEFT, "Record [V]ideo (Off) ", "")
if self._video_idx > 0:
fname = self._video_path % (self._video_idx - 1)
self.add_overlay(const.GRID_TOPLEFT, " saved as %s" % fname, "")
self.add_overlay(const.GRID_TOPLEFT, "Cap[t]ure frame", "")
if self._image_idx > 0:
fname = self._image_path % (self._image_idx - 1)
self.add_overlay(const.GRID_TOPLEFT, " saved as %s" % fname, "")
self.add_overlay(const.GRID_TOPLEFT, "Start [i]pdb", "")
if self._record_video:
extra = " (while video is not recorded)"
else:
extra = ""
self.add_overlay(const.GRID_BOTTOMLEFT, "FPS", "%d%s" %
(1 / self._time_per_render, extra))
self.add_overlay(const.GRID_BOTTOMLEFT, "Solver iterations", str(
self.sim.data.solver_iter + 1))
step = round(self.sim.data.time / self.sim.model.opt.timestep)
self.add_overlay(const.GRID_BOTTOMRIGHT, "Step", str(step))
self.add_overlay(const.GRID_BOTTOMRIGHT, "timestep", "%.5f" % self.sim.model.opt.timestep)
self.add_overlay(const.GRID_BOTTOMRIGHT, "n_substeps", str(self.sim.nsubsteps))
self.add_overlay(const.GRID_TOPLEFT, "Toggle geomgroup visibility", "0-4")