Source code for omni.isaac.lab.envs.ui.manager_based_rl_env_window

# Copyright (c) 2022-2024, The Isaac Lab Project Developers.
# All rights reserved.
#
# SPDX-License-Identifier: BSD-3-Clause

from __future__ import annotations

from typing import TYPE_CHECKING

from .base_env_window import BaseEnvWindow

if TYPE_CHECKING:
    from ..manager_based_rl_env import ManagerBasedRLEnv


[docs]class ManagerBasedRLEnvWindow(BaseEnvWindow): """Window manager for the RL environment. On top of the basic environment window, this class adds controls for the RL environment. This includes visualization of the command manager. """
[docs] def __init__(self, env: ManagerBasedRLEnv, window_name: str = "IsaacLab"): """Initialize the window. Args: env: The environment object. window_name: The name of the window. Defaults to "IsaacLab". """ # initialize base window super().__init__(env, window_name) # add custom UI elements with self.ui_window_elements["main_vstack"]: with self.ui_window_elements["debug_frame"]: with self.ui_window_elements["debug_vstack"]: self._visualize_manager(title="Commands", class_name="command_manager") self._visualize_manager(title="Rewards", class_name="reward_manager") self._visualize_manager(title="Curriculum", class_name="curriculum_manager") self._visualize_manager(title="Termination", class_name="termination_manager")