From 2633d1f2e91718df289f9ef70cdb2f8bf1281a8a Mon Sep 17 00:00:00 2001 From: fan-ziqi Date: Wed, 6 Nov 2024 16:12:26 +0800 Subject: [PATCH] docs: 20241106 --- .../api/lab/omni.isaac.lab.actuators.po | 409 +-- .../source/api/lab/omni.isaac.lab.assets.po | 139 +- .../source/api/lab/omni.isaac.lab.envs.mdp.po | 876 ++---- .../source/api/lab/omni.isaac.lab.envs.po | 150 +- .../source/api/lab/omni.isaac.lab.managers.po | 33 +- .../source/api/lab/omni.isaac.lab.sensors.po | 298 +- .../api/lab/omni.isaac.lab.sim.converters.po | 107 +- .../source/api/lab/omni.isaac.lab.sim.po | 28 +- .../api/lab/omni.isaac.lab.sim.spawners.po | 2360 +-------------- .../source/api/lab/omni.isaac.lab.terrains.po | 1124 +------- .../source/api/lab/omni.isaac.lab.utils.po | 340 ++- .../core-concepts/motion_generators.po | 402 --- .../overview/core-concepts/task_workflows.po | 60 +- .../LC_MESSAGES/source/refs/changelog.po | 2567 +++++++++-------- .../refs/reference_architecture/index.po | 807 ++++++ docs/source/_static/wechat-group2-1030.jpg | Bin 172162 -> 0 bytes docs/source/_static/wechat-group2-1106.jpg | Bin 0 -> 171666 bytes docs/source/setup/translation.rst | 6 +- docs/source/setup/wechat.rst | 4 +- 19 files changed, 2831 insertions(+), 6879 deletions(-) delete mode 100644 docs/locale/zh_CN/LC_MESSAGES/source/overview/core-concepts/motion_generators.po create mode 100644 docs/locale/zh_CN/LC_MESSAGES/source/refs/reference_architecture/index.po delete mode 100644 docs/source/_static/wechat-group2-1030.jpg create mode 100644 docs/source/_static/wechat-group2-1106.jpg diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.actuators.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.actuators.po index 2d13b3a3ae..2d3f3fd900 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.actuators.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.actuators.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-11-06 14:26+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.actuators.rst:2 msgid "omni.isaac.lab.actuators" @@ -334,6 +334,7 @@ msgstr "" #: omni.isaac.lab.actuators.DCMotor.cfg:1::1 #: omni.isaac.lab.actuators.DelayedPDActuator.cfg:1::1 #: omni.isaac.lab.actuators.IdealPDActuator.cfg:1::1 +#: omni.isaac.lab.actuators.ImplicitActuator.cfg:1::1 #: omni.isaac.lab.actuators.actuator_base.ActuatorBase.compute:1 #: omni.isaac.lab.actuators.actuator_base.ActuatorBase:1::1 #: omni.isaac.lab.actuators.actuator_net.ActuatorNetLSTM.compute:1 @@ -341,6 +342,7 @@ msgstr "" #: omni.isaac.lab.actuators.actuator_pd.DCMotor.compute:1 #: omni.isaac.lab.actuators.actuator_pd.DelayedPDActuator.compute:1 #: omni.isaac.lab.actuators.actuator_pd.IdealPDActuator.compute:1 +#: omni.isaac.lab.actuators.actuator_pd.ImplicitActuator.compute:1 #: omni.isaac.lab.actuators.actuator_pd.RemotizedPDActuator.compute:1 #: omni.isaac.lab.actuators.actuator_pd.RemotizedPDActuator:1::1 msgid "Process the actuator group actions and compute the articulation actions." @@ -352,8 +354,6 @@ msgstr "" #: omni.isaac.lab.actuators.actuator_cfg.ActuatorNetMLPCfg:1 #: omni.isaac.lab.actuators.actuator_cfg.DCMotorCfg:1 #: omni.isaac.lab.actuators.actuator_cfg.DelayedPDActuatorCfg:1 -#: omni.isaac.lab.actuators.actuator_cfg.IdealPDActuatorCfg:1 -#: omni.isaac.lab.actuators.actuator_cfg.ImplicitActuatorCfg:1 #: omni.isaac.lab.actuators.actuator_cfg.RemotizedPDActuatorCfg:1 #: omni.isaac.lab.actuators.actuator_net.ActuatorNetLSTM:1 #: omni.isaac.lab.actuators.actuator_net.ActuatorNetMLP:1 @@ -545,25 +545,18 @@ msgstr "" #: omni.isaac.lab.actuators.ActuatorBaseCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.ActuatorNetLSTM.joint_names:1 #: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.joint_names_expr:1 -#: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 #: omni.isaac.lab.actuators.ActuatorNetMLP.joint_names:1 #: omni.isaac.lab.actuators.ActuatorNetMLPCfg.joint_names_expr:1 -#: omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 #: omni.isaac.lab.actuators.DCMotor.joint_names:1 #: omni.isaac.lab.actuators.DCMotorCfg.joint_names_expr:1 -#: omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 #: omni.isaac.lab.actuators.DelayedPDActuator.joint_names:1 #: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1 -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.IdealPDActuator.joint_names:1 #: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1 -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.ImplicitActuator.joint_names:1 #: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1 -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.RemotizedPDActuator.joint_names:1 #: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1 -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.actuator_base.ActuatorBase.__init__:1::1 #: omni.isaac.lab.actuators.actuator_net.ActuatorNetLSTM:1::1 #: omni.isaac.lab.actuators.actuator_net.ActuatorNetMLP:1::1 @@ -629,6 +622,7 @@ msgstr "" #: omni.isaac.lab.actuators.actuator_pd.DelayedPDActuator.reset #: omni.isaac.lab.actuators.actuator_pd.IdealPDActuator.compute #: omni.isaac.lab.actuators.actuator_pd.IdealPDActuator.reset +#: omni.isaac.lab.actuators.actuator_pd.ImplicitActuator.compute #: omni.isaac.lab.actuators.actuator_pd.ImplicitActuator.reset #: omni.isaac.lab.actuators.actuator_pd.RemotizedPDActuator.__init__ #: omni.isaac.lab.actuators.actuator_pd.RemotizedPDActuator.compute @@ -891,6 +885,7 @@ msgstr "" #: omni.isaac.lab.actuators.actuator_pd.DCMotor.compute:5 #: omni.isaac.lab.actuators.actuator_pd.DelayedPDActuator.compute:5 #: omni.isaac.lab.actuators.actuator_pd.IdealPDActuator.compute:5 +#: omni.isaac.lab.actuators.actuator_pd.ImplicitActuator.compute:8 #: omni.isaac.lab.actuators.actuator_pd.RemotizedPDActuator.compute:5 msgid "" "The joint action instance comprising of the desired joint positions, " @@ -903,6 +898,7 @@ msgstr "" #: omni.isaac.lab.actuators.actuator_pd.DCMotor.compute:7 #: omni.isaac.lab.actuators.actuator_pd.DelayedPDActuator.compute:7 #: omni.isaac.lab.actuators.actuator_pd.IdealPDActuator.compute:7 +#: omni.isaac.lab.actuators.actuator_pd.ImplicitActuator.compute:10 #: omni.isaac.lab.actuators.actuator_pd.RemotizedPDActuator.compute:7 msgid "" "The current joint positions of the joints in the group. Shape is " @@ -915,6 +911,7 @@ msgstr "" #: omni.isaac.lab.actuators.actuator_pd.DCMotor.compute:8 #: omni.isaac.lab.actuators.actuator_pd.DelayedPDActuator.compute:8 #: omni.isaac.lab.actuators.actuator_pd.IdealPDActuator.compute:8 +#: omni.isaac.lab.actuators.actuator_pd.ImplicitActuator.compute:11 #: omni.isaac.lab.actuators.actuator_pd.RemotizedPDActuator.compute:8 msgid "" "The current joint velocities of the joints in the group. Shape is " @@ -927,6 +924,7 @@ msgstr "" #: omni.isaac.lab.actuators.actuator_pd.DCMotor.compute #: omni.isaac.lab.actuators.actuator_pd.DelayedPDActuator.compute #: omni.isaac.lab.actuators.actuator_pd.IdealPDActuator.compute +#: omni.isaac.lab.actuators.actuator_pd.ImplicitActuator.compute #: omni.isaac.lab.actuators.actuator_pd.RemotizedPDActuator.compute msgid "Returns" msgstr "" @@ -937,6 +935,7 @@ msgstr "" #: omni.isaac.lab.actuators.actuator_pd.DCMotor.compute:10 #: omni.isaac.lab.actuators.actuator_pd.DelayedPDActuator.compute:10 #: omni.isaac.lab.actuators.actuator_pd.IdealPDActuator.compute:10 +#: omni.isaac.lab.actuators.actuator_pd.ImplicitActuator.compute:13 #: omni.isaac.lab.actuators.actuator_pd.RemotizedPDActuator.compute:10 msgid "The computed desired joint positions, joint velocities and joint efforts." msgstr "" @@ -957,13 +956,6 @@ msgstr "" #: of #: omni.isaac.lab.actuators.ActuatorBaseCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -#: omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -#: omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 msgid "Force/Torque limit of the joints in the group." msgstr "" @@ -976,13 +968,6 @@ msgstr "" #: of #: omni.isaac.lab.actuators.ActuatorBaseCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -#: omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -#: omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 msgid "Velocity limit of the joints in the group." msgstr "" @@ -995,18 +980,11 @@ msgstr "" #: omni.isaac.lab.actuators.ActuatorBaseCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.ActuatorBaseCfg.stiffness:1 #: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1 -#: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 #: omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1 -#: omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -#: omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 #: omni.isaac.lab.actuators.DCMotorCfg.stiffness:1 -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.DelayedPDActuatorCfg.stiffness:1 -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.IdealPDActuatorCfg.stiffness:1 -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.ImplicitActuatorCfg.stiffness:1 -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.stiffness:1 msgid "Stiffness gains (also known as p-gain) of the joints in the group." msgstr "" @@ -1019,19 +997,12 @@ msgstr "" #: ../../docstring of omni.isaac.lab.actuators.ActuatorBaseCfg.damping:1 #: omni.isaac.lab.actuators.ActuatorBaseCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.damping:1 -#: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 #: omni.isaac.lab.actuators.ActuatorNetMLPCfg.damping:1 -#: omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 #: omni.isaac.lab.actuators.DCMotorCfg.damping:1 -#: omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 #: omni.isaac.lab.actuators.DelayedPDActuatorCfg.damping:1 -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.IdealPDActuatorCfg.damping:1 -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.ImplicitActuatorCfg.damping:1 -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 #: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.damping:1 -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 msgid "Damping gains (also known as d-gain) of the joints in the group." msgstr "" @@ -1042,13 +1013,6 @@ msgstr "" #: of #: omni.isaac.lab.actuators.ActuatorBaseCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -#: omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -#: omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 msgid "Armature of the joints in the group." msgstr "" @@ -1059,13 +1023,6 @@ msgstr "" #: of #: omni.isaac.lab.actuators.ActuatorBaseCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -#: omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -#: omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 msgid "Joint friction of the joints in the group." msgstr "" @@ -1312,16 +1269,18 @@ msgid "" msgstr "" #: of omni.isaac.lab.actuators.ImplicitActuator.cfg:1::1 -#: omni.isaac.lab.actuators.actuator_pd.ImplicitActuator.compute:1 msgid "" -"Compute the aproximmate torques for the actuated joint (physX does not " -"compute this explicitly)." +":py:obj:`__init__ `\\" +" \\(cfg\\, joint\\_names\\, joint\\_ids\\, ...\\[\\, ...\\]\\)" msgstr "" -#: of omni.isaac.lab.actuators.ImplicitActuator.cfg:1::1 +#: of omni.isaac.lab.actuators.actuator_pd.ImplicitActuator.compute:3 msgid "" -":py:obj:`__init__ `\\" -" \\(cfg\\, joint\\_names\\, joint\\_ids\\, ...\\[\\, ...\\]\\)" +"In case of implicit actuator, the control action is directly returned as " +"the computed action. This function is a no-op and does not perform any " +"computation on the input control action. However, it computes the " +"approximate torques for the actuated joint since PhysX does not compute " +"this quantity explicitly." msgstr "" #: of omni.isaac.lab.actuators.actuator_cfg.IdealPDActuatorCfg:1 @@ -1333,53 +1292,6 @@ msgstr "" msgid "The PD control is handled implicitly by the simulation." msgstr "" -#: of -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`joint_names_expr " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`effort_limit " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`velocity_limit " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`stiffness " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -msgid ":py:obj:`damping `\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`armature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.ImplicitActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`friction " -"`\\" -msgstr "" - #: ../../source/api/lab/omni.isaac.lab.actuators.rst:54 msgid "Ideal PD Actuator" msgstr "" @@ -1508,53 +1420,6 @@ msgid "" "\\(cfg\\, joint\\_names\\, joint\\_ids\\, ...\\[\\, ...\\]\\)" msgstr "" -#: of -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`joint_names_expr " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`effort_limit " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`velocity_limit " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`stiffness " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -msgid ":py:obj:`damping `\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`armature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.IdealPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`friction " -"`\\" -msgstr "" - #: ../../source/api/lab/omni.isaac.lab.actuators.rst:68 msgid "DC Motor Actuator" msgstr "" @@ -1729,48 +1594,12 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.saturation_effort:1 -#: omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 #: omni.isaac.lab.actuators.ActuatorNetMLPCfg.saturation_effort:1 -#: omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 #: omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1 #: omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 msgid "Peak motor force/torque of the electric DC motor (in N-m)." msgstr "" -#: of omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -msgid "" -":py:obj:`joint_names_expr " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -msgid "" -":py:obj:`effort_limit " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -msgid "" -":py:obj:`velocity_limit " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -msgid ":py:obj:`stiffness `\\" -msgstr "" - -#: of omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -msgid ":py:obj:`damping `\\" -msgstr "" - -#: of omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -msgid ":py:obj:`armature `\\" -msgstr "" - -#: of omni.isaac.lab.actuators.DCMotorCfg.saturation_effort:1::1 -msgid ":py:obj:`friction `\\" -msgstr "" - #: ../../source/api/lab/omni.isaac.lab.actuators.rst:82 msgid "Delayed PD Actuator" msgstr "" @@ -1876,55 +1705,6 @@ msgid "" "\\(control\\_action\\, joint\\_pos\\, joint\\_vel\\)" msgstr "" -#: of -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`joint_names_expr " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`effort_limit " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`velocity_limit " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`stiffness " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`damping " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`armature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`friction " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 msgid "" @@ -1934,7 +1714,6 @@ msgstr "" #: of #: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 msgid "" "Minimum number of physics time-steps with which the actuator command may " "be delayed." @@ -1949,7 +1728,6 @@ msgstr "" #: of #: omni.isaac.lab.actuators.DelayedPDActuatorCfg.joint_names_expr:1::1 -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 msgid "" "Maximum number of physics time-steps with which the actuator command may " "be delayed." @@ -2109,69 +1887,6 @@ msgid "" "torques." msgstr "" -#: of -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`joint_names_expr " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`effort_limit " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`velocity_limit " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`stiffness " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`damping " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`armature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`friction " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`min_delay " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 -msgid "" -":py:obj:`max_delay " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.actuators.RemotizedPDActuatorCfg.joint_names_expr:1::1 msgid "" @@ -2314,16 +2029,6 @@ msgstr "" msgid "Bases: :py:class:`~omni.isaac.lab.actuators.actuator_cfg.DCMotorCfg`" msgstr "" -#: of omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -msgid "" -":py:obj:`stiffness " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -msgid ":py:obj:`damping `\\" -msgstr "" - #: of omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 msgid "" ":py:obj:`network_file " @@ -2338,38 +2043,6 @@ msgstr "" msgid "Path to the file containing network weights." msgstr "" -#: of omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -msgid "" -":py:obj:`joint_names_expr " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -msgid "" -":py:obj:`effort_limit " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -msgid "" -":py:obj:`velocity_limit " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -msgid ":py:obj:`armature `\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -msgid ":py:obj:`friction `\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 -msgid "" -":py:obj:`saturation_effort " -"`\\" -msgstr "" - #: of omni.isaac.lab.actuators.ActuatorNetMLPCfg.stiffness:1::1 msgid "" ":py:obj:`pos_scale " @@ -2539,55 +2212,9 @@ msgid "" "\\(control\\_action\\, joint\\_pos\\, joint\\_vel\\)" msgstr "" -#: of omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -msgid "" -":py:obj:`stiffness " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -msgid ":py:obj:`damping `\\" -msgstr "" - #: of omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 msgid "" ":py:obj:`network_file " "`\\" msgstr "" -#: of omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -msgid "" -":py:obj:`joint_names_expr " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -msgid "" -":py:obj:`effort_limit " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -msgid "" -":py:obj:`velocity_limit " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -msgid "" -":py:obj:`armature " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -msgid "" -":py:obj:`friction " -"`\\" -msgstr "" - -#: of omni.isaac.lab.actuators.ActuatorNetLSTMCfg.stiffness:1::1 -msgid "" -":py:obj:`saturation_effort " -"`\\" -msgstr "" - diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.assets.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.assets.po index ba4d071513..a15d36915d 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.assets.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.assets.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-10-22 15:18+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.assets.rst:2 msgid "omni.isaac.lab.assets" @@ -576,9 +576,7 @@ msgstr "" #: omni.isaac.lab.assets.AssetBaseCfg.prim_path:1 #: omni.isaac.lab.assets.DeformableObjectCfg.prim_path:1 #: omni.isaac.lab.assets.RigidObjectCfg.prim_path:1 -#: omni.isaac.lab.assets.articulation.articulation_cfg.ArticulationCfg.InitialStateCfg:1::1 #: omni.isaac.lab.assets.asset_base_cfg.AssetBaseCfg.InitialStateCfg:1::1 -#: omni.isaac.lab.assets.rigid_object.rigid_object_cfg.RigidObjectCfg.InitialStateCfg:1::1 msgid "Prim path (or expression) to the asset." msgstr "" @@ -588,9 +586,7 @@ msgid ":py:obj:`spawn `\\" msgstr "" #: of -#: omni.isaac.lab.assets.articulation.articulation_cfg.ArticulationCfg.InitialStateCfg:1::1 #: omni.isaac.lab.assets.asset_base_cfg.AssetBaseCfg.InitialStateCfg:1::1 -#: omni.isaac.lab.assets.rigid_object.rigid_object_cfg.RigidObjectCfg.InitialStateCfg:1::1 msgid "Spawn configuration for the asset." msgstr "" @@ -613,9 +609,7 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.assets.articulation.articulation_cfg.ArticulationCfg.InitialStateCfg:1::1 #: omni.isaac.lab.assets.asset_base_cfg.AssetBaseCfg.InitialStateCfg:1::1 -#: omni.isaac.lab.assets.rigid_object.rigid_object_cfg.RigidObjectCfg.InitialStateCfg:1::1 msgid "Collision group of the asset." msgstr "" @@ -625,9 +619,7 @@ msgid ":py:obj:`debug_vis `\\" msgstr "" #: of -#: omni.isaac.lab.assets.articulation.articulation_cfg.ArticulationCfg.InitialStateCfg:1::1 #: omni.isaac.lab.assets.asset_base_cfg.AssetBaseCfg.InitialStateCfg:1::1 -#: omni.isaac.lab.assets.rigid_object.rigid_object_cfg.RigidObjectCfg.InitialStateCfg:1::1 msgid "Whether to enable debug visualization for the asset." msgstr "" @@ -650,11 +642,7 @@ msgstr "" msgid ":py:obj:`pos `\\" msgstr "" -#: of -#: omni.isaac.lab.assets.ArticulationCfg.InitialStateCfg.lin_vel:1::1 -#: omni.isaac.lab.assets.AssetBaseCfg.InitialStateCfg.pos:1::1 -#: omni.isaac.lab.assets.DeformableObjectCfg.InitialStateCfg.pos:1::1 -#: omni.isaac.lab.assets.RigidObjectCfg.InitialStateCfg.lin_vel:1::1 +#: of omni.isaac.lab.assets.AssetBaseCfg.InitialStateCfg.pos:1::1 msgid "Position of the root in simulation world frame." msgstr "" @@ -662,11 +650,7 @@ msgstr "" msgid ":py:obj:`rot `\\" msgstr "" -#: of -#: omni.isaac.lab.assets.ArticulationCfg.InitialStateCfg.lin_vel:1::1 -#: omni.isaac.lab.assets.AssetBaseCfg.InitialStateCfg.pos:1::1 -#: omni.isaac.lab.assets.DeformableObjectCfg.InitialStateCfg.pos:1::1 -#: omni.isaac.lab.assets.RigidObjectCfg.InitialStateCfg.lin_vel:1::1 +#: of omni.isaac.lab.assets.AssetBaseCfg.InitialStateCfg.pos:1::1 msgid "Quaternion rotation (w, x, y, z) of the root in simulation world frame." msgstr "" @@ -1764,28 +1748,6 @@ msgstr "" msgid "Initial state of the rigid body." msgstr "" -#: of -#: omni.isaac.lab.assets.rigid_object.rigid_object_cfg.RigidObjectCfg.InitialStateCfg:1::1 -msgid ":py:obj:`prim_path `\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.rigid_object.rigid_object_cfg.RigidObjectCfg.InitialStateCfg:1::1 -msgid ":py:obj:`spawn `\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.rigid_object.rigid_object_cfg.RigidObjectCfg.InitialStateCfg:1::1 -msgid "" -":py:obj:`collision_group " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.rigid_object.rigid_object_cfg.RigidObjectCfg.InitialStateCfg:1::1 -msgid ":py:obj:`debug_vis `\\" -msgstr "" - #: of #: omni.isaac.lab.assets.rigid_object.rigid_object_cfg.RigidObjectCfg.InitialStateCfg:1::1 msgid ":py:obj:`init_state `\\" @@ -1825,16 +1787,6 @@ msgstr "" msgid "Angular velocity of the root in simulation world frame." msgstr "" -#: of -#: omni.isaac.lab.assets.RigidObjectCfg.InitialStateCfg.lin_vel:1::1 -msgid ":py:obj:`pos `\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.RigidObjectCfg.InitialStateCfg.lin_vel:1::1 -msgid ":py:obj:`rot `\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.assets.ArticulationCfg.InitialStateCfg.lin_vel:1 #: omni.isaac.lab.assets.RigidObjectCfg.InitialStateCfg.lin_vel:1 @@ -3621,28 +3573,6 @@ msgstr "" msgid "Initial state of the articulation." msgstr "" -#: of -#: omni.isaac.lab.assets.articulation.articulation_cfg.ArticulationCfg.InitialStateCfg:1::1 -msgid ":py:obj:`prim_path `\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.articulation.articulation_cfg.ArticulationCfg.InitialStateCfg:1::1 -msgid ":py:obj:`spawn `\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.articulation.articulation_cfg.ArticulationCfg.InitialStateCfg:1::1 -msgid "" -":py:obj:`collision_group " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.articulation.articulation_cfg.ArticulationCfg.InitialStateCfg:1::1 -msgid ":py:obj:`debug_vis `\\" -msgstr "" - #: of #: omni.isaac.lab.assets.articulation.articulation_cfg.ArticulationCfg.InitialStateCfg:1::1 msgid ":py:obj:`init_state `\\" @@ -3715,20 +3645,6 @@ msgstr "" msgid "Joint velocities of the joints." msgstr "" -#: of -#: omni.isaac.lab.assets.ArticulationCfg.InitialStateCfg.lin_vel:1::1 -msgid "" -":py:obj:`pos " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.ArticulationCfg.InitialStateCfg.lin_vel:1::1 -msgid "" -":py:obj:`rot " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.assets.ArticulationCfg.InitialStateCfg.joint_pos:1 msgid "Joint positions of the joints. Defaults to 0.0 for all joints." @@ -4491,39 +4407,6 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.assets.asset_base_cfg.AssetBaseCfg.InitialStateCfg:1::1 -msgid "" -":py:obj:`prim_path " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.asset_base_cfg.AssetBaseCfg.InitialStateCfg:1::1 -msgid ":py:obj:`spawn `\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.asset_base_cfg.AssetBaseCfg.InitialStateCfg:1::1 -msgid "" -":py:obj:`init_state " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.asset_base_cfg.AssetBaseCfg.InitialStateCfg:1::1 -msgid "" -":py:obj:`collision_group " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.asset_base_cfg.AssetBaseCfg.InitialStateCfg:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.assets.asset_base_cfg.AssetBaseCfg.InitialStateCfg:1::1 msgid "" @@ -4536,20 +4419,6 @@ msgstr "" msgid "The configuration object for the visualization markers." msgstr "" -#: of -#: omni.isaac.lab.assets.DeformableObjectCfg.InitialStateCfg.pos:1::1 -msgid "" -":py:obj:`pos " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.assets.DeformableObjectCfg.InitialStateCfg.pos:1::1 -msgid "" -":py:obj:`rot " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.assets.DeformableObjectCfg.visualizer_cfg:1 msgid "" diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.envs.mdp.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.envs.mdp.po index 78910713e1..974605d336 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.envs.mdp.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.envs.mdp.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-11-06 14:26+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.envs.mdp.rst:2 msgid "omni.isaac.lab.envs.mdp" @@ -244,7 +244,7 @@ msgstr "" #: of omni.isaac.lab.envs.mdp.observations.imu_orientation:1 #: omni.isaac.lab.envs.mdp.observations:1::1 -msgid "Imu sensor orientation w.r.t the env.scene.origin." +msgid "Imu sensor orientation in the simulation world frame." msgstr "" #: of omni.isaac.lab.envs.mdp.observations:1::1 @@ -384,7 +384,9 @@ msgstr "" #: of omni.isaac.lab.envs.mdp.curriculums.modify_reward_weight #: omni.isaac.lab.envs.mdp.events.randomize_rigid_body_material.__init__ #: omni.isaac.lab.envs.mdp.observations.image +#: omni.isaac.lab.envs.mdp.observations.image_features #: omni.isaac.lab.envs.mdp.observations.image_features.__init__ +#: omni.isaac.lab.envs.mdp.observations.image_features.reset #: omni.isaac.lab.envs.mdp.observations.imu_ang_vel #: omni.isaac.lab.envs.mdp.observations.imu_lin_acc #: omni.isaac.lab.envs.mdp.observations.imu_orientation @@ -402,10 +404,13 @@ msgstr "" #: of omni.isaac.lab.envs.mdp.observations.imu_ang_vel:4 #: omni.isaac.lab.envs.mdp.observations.imu_lin_acc:4 #: omni.isaac.lab.envs.mdp.observations.imu_orientation:4 -msgid "The SceneEntity associated with an Imu sensor." +msgid "" +"The SceneEntity associated with an IMU sensor. Defaults to " +"SceneEntityCfg(\"imu\")." msgstr "" #: of omni.isaac.lab.envs.mdp.observations.image +#: omni.isaac.lab.envs.mdp.observations.image_features #: omni.isaac.lab.envs.mdp.observations.imu_ang_vel #: omni.isaac.lab.envs.mdp.observations.imu_lin_acc #: omni.isaac.lab.envs.mdp.observations.imu_orientation @@ -413,27 +418,31 @@ msgid "Returns" msgstr "" #: of omni.isaac.lab.envs.mdp.observations.imu_orientation:6 -msgid "Orientation quaternion (wxyz), shape of torch.tensor is (num_env,4)." +msgid "" +"Orientation in the world frame in (w, x, y, z) quaternion form. Shape is " +"(num_envs, 4)." msgstr "" #: of omni.isaac.lab.envs.mdp.observations.imu_ang_vel:1 msgid "" -"Imu sensor angular velocity w.r.t. env.scene.origin expressed in the " +"Imu sensor angular velocity w.r.t. environment origin expressed in the " "sensor frame." msgstr "" #: of omni.isaac.lab.envs.mdp.observations.imu_ang_vel:6 -msgid "Angular velocity (rad/s), shape of torch.tensor is (num_env,3)." +msgid "The angular velocity (rad/s) in the sensor frame. Shape is (num_envs, 3)." msgstr "" #: of omni.isaac.lab.envs.mdp.observations.imu_lin_acc:1 msgid "" -"Imu sensor linear acceleration w.r.t. env.scene.origin expressed in " -"sensor frame." +"Imu sensor linear acceleration w.r.t. the environment origin expressed in" +" sensor frame." msgstr "" #: of omni.isaac.lab.envs.mdp.observations.imu_lin_acc:6 -msgid "linear acceleration (m/s^2), shape of torch.tensor is (num_env,3)." +msgid "" +"The linear acceleration (m/s^2) in the sensor frame. Shape is (num_envs, " +"3)." msgstr "" #: of omni.isaac.lab.envs.mdp.observations.image:3 @@ -469,6 +478,7 @@ msgid "The data type to pull from the desired camera. Defaults to \"rgb\"." msgstr "" #: of omni.isaac.lab.envs.mdp.observations.image:12 +#: omni.isaac.lab.envs.mdp.observations.image_features:23 msgid "" "Whether to orthogonalize perspective depth images. This is used only when" " the data type is \"distance_to_camera\". Defaults to False." @@ -486,8 +496,104 @@ msgstr "" #: of omni.isaac.lab.envs.mdp.observations.image_features:3 msgid "" -"This method calls the :meth:`image` function to retrieve images, and then" -" performs inference on those images." +"This term uses models from the model zoo in PyTorch and extracts features" +" from the images." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:5 +msgid "" +"It calls the :func:`image` function to get the images and then processes " +"them using the model zoo." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:7 +msgid "" +"A user can provide their own model zoo configuration to use different " +"models for feature extraction. The model zoo configuration should be a " +"dictionary that maps different model names to a dictionary that defines " +"the model, preprocess and inference functions. The dictionary should have" +" the following entries:" +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:12 +msgid "" +"\"model\": A callable that returns the model when invoked without " +"arguments." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:13 +msgid "" +"\"reset\": A callable that resets the model. This is useful when the " +"model has a state that needs to be reset." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:14 +msgid "" +"\"inference\": A callable that, when given the model and the images, " +"returns the extracted features." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:16 +msgid "" +"If the model zoo configuration is not provided, the default model zoo " +"configurations are used. The default model zoo configurations include the" +" models from Theia :cite:`shang2024theia` and ResNet :cite:`he2016deep`. " +"These models are loaded from `Hugging-Face transformers " +"`_ and `PyTorch " +"torchvision `_ " +"respectively." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:21 +msgid "" +"The sensor configuration to poll. Defaults to " +"SceneEntityCfg(\"tiled_camera\")." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:22 +msgid "The sensor data type. Defaults to \"rgb\"." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:25 +msgid "" +"A user-defined dictionary that maps different model names to their " +"respective configurations. Defaults to None. If None, the default model " +"zoo configurations are used." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:27 +msgid "The name of the model to use for inference. Defaults to \"resnet18\"." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:28 +msgid "" +"The device to store and infer the model on. This is useful when " +"offloading the computation from the environment simulation device. " +"Defaults to the environment device." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:30 +msgid "" +"Additional keyword arguments to pass to the inference function. Defaults " +"to None, which means no additional arguments are passed." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:33 +msgid "The extracted features tensor. Shape is (num_envs, feature_dim)." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.events.randomize_rigid_body_material.__init__ +#: omni.isaac.lab.envs.mdp.events.reset_root_state_from_terrain +#: omni.isaac.lab.envs.mdp.observations.image_features +msgid "Raises" +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:35 +msgid "When the model name is not found in the provided model zoo configuration." +msgstr "" + +#: of omni.isaac.lab.envs.mdp.observations.image_features:36 +msgid "When the model name is not found in the default model zoo configuration." msgstr "" #: of omni.isaac.lab.envs.mdp.events.randomize_rigid_body_material:1 @@ -511,6 +617,20 @@ msgstr "" msgid "Initialize the manager term." msgstr "" +#: of +#: omni.isaac.lab.envs.mdp.observations.image_features.__init__:1::1 +msgid "" +":py:obj:`reset " +"`\\ " +"\\(\\[env\\_ids\\]\\)" +msgstr "" + +#: of +#: omni.isaac.lab.envs.mdp.observations.image_features.__init__:1::1 +#: omni.isaac.lab.envs.mdp.observations.image_features.reset:1 +msgid "Resets the manager term." +msgstr "" + #: of omni.isaac.lab.envs.mdp.observations.image_features.__init__:3 #: omni.isaac.lab.envs.mdp.rewards.is_terminated_term.__init__:3 msgid "The configuration object." @@ -522,6 +642,12 @@ msgstr "" msgid "The environment instance." msgstr "" +#: of omni.isaac.lab.envs.mdp.observations.image_features.reset:3 +msgid "" +"The environment ids. Defaults to None, in which case all environments are" +" considered." +msgstr "" + #: of omni.isaac.lab.envs.mdp.observations.last_action:3 msgid "" "The name of the action term for which the action is required. If None, " @@ -707,13 +833,10 @@ msgid "See :class:`JointAction` for more details." msgstr "" #: of omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.OffsetCfg:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg:1 @@ -721,7 +844,6 @@ msgstr "" #: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg.Ranges:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NullCommandCfg:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg.Ranges:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg:1 @@ -743,26 +865,19 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.joint_names:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.joint_names:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.joint_names:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.joint_names:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.joint_names:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.joint_names:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.joint_names:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.joint_names:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.joint_names:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.joint_names:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.joint_names:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 msgid "" "List of joint names or regex expressions that the action will be mapped " "to." @@ -776,13 +891,8 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 msgid "Scale factor for the action (float or dict of regex expressions)." msgstr "" @@ -795,10 +905,6 @@ msgstr "" #: of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 msgid "Offset factor for the action (float or dict of regex expressions)." msgstr "" @@ -811,77 +917,9 @@ msgstr "" #: of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 msgid "Whether to preserve the order of the joint names in the action output." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.joint_names:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: ../../docstring of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.NonHolonomicActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.NonHolonomicActionCfg.body_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 -msgid "The name of the scene entity." -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.joint_names:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.NonHolonomicActionCfg.body_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NullCommandCfg.resampling_time_range:1::1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg:1::1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPoseCommandCfg:1::1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 -msgid "Whether to visualize debug information." -msgstr "" - #: ../../docstring of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.scale:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.scale:1 @@ -917,6 +955,22 @@ msgid "" "Defaults to False." msgstr "" +#: ../../docstring of +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.NonHolonomicActionCfg.asset_name:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.asset_name:1 +msgid "The name of the scene entity." +msgstr "" + #: ../../docstring of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.asset_name:3 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:3 @@ -984,48 +1038,6 @@ msgid "" "asset as offset." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`joint_names " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`offset " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`preserve_order " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionActionCfg.use_default_offset:1 msgid "" @@ -1057,48 +1069,6 @@ msgstr "" msgid "Whether to ignore the offset defined in articulation asset." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 -msgid "" -":py:obj:`joint_names " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 -msgid "" -":py:obj:`scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 -msgid "" -":py:obj:`offset " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1::1 -msgid "" -":py:obj:`preserve_order " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.RelativeJointPositionActionCfg.use_zero_offset:1 msgid "" @@ -1131,48 +1101,6 @@ msgid "" "asset as offset." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`joint_names " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`offset " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1::1 -msgid "" -":py:obj:`preserve_order " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointVelocityActionCfg.use_default_offset:1 msgid "" @@ -1189,48 +1117,6 @@ msgstr "" msgid "See :class:`JointEffortAction` for more details." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -msgid "" -":py:obj:`joint_names " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -msgid "" -":py:obj:`scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -msgid "" -":py:obj:`offset " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointEffortActionCfg.asset_name:1::1 -msgid "" -":py:obj:`preserve_order " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg:3 msgid "See :class:`JointPositionWithinLimitsAction` for more details." @@ -1258,25 +1144,10 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.joint_names:1::1 msgid "Whether to rescale the action to the joint limits." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.joint_names:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.joint_names:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.rescale_to_limits:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.JointPositionToLimitsActionCfg.rescale_to_limits:1 @@ -1322,41 +1193,6 @@ msgstr "" msgid "The weight for the moving average (float or dict of regex expressions)." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1::1 -msgid "" -":py:obj:`joint_names " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1::1 -msgid "" -":py:obj:`scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1::1 -msgid "" -":py:obj:`rescale_to_limits " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.EMAJointPositionToLimitsActionCfg.alpha:1 msgid "" @@ -1376,146 +1212,58 @@ msgid "See :class:`BinaryJointAction` for more details." msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 -msgid "" -":py:obj:`joint_names " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 -msgid "" -":py:obj:`open_command_expr " -"`\\" -msgstr "" - -#: ../../docstring of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.open_command_expr:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.open_command_expr:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.open_command_expr:1 -msgid "The joint command to move to *open* configuration." -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 -msgid "" -":py:obj:`close_command_expr " -"`\\" -msgstr "" - -#: ../../docstring of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.close_command_expr:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.close_command_expr:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1::1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.close_command_expr:1 -msgid "The joint command to move to *close* configuration." -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg:1 -msgid "" -"Bases: " -":py:class:`~omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg`" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg:3 -msgid "See :class:`BinaryJointPositionAction` for more details." -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 msgid "" ":py:obj:`joint_names " -"`\\" +"`\\" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 msgid "" ":py:obj:`open_command_expr " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.asset_name:1::1 -msgid "" -":py:obj:`close_command_expr " -"`\\" +"`\\" msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg:3 -msgid "See :class:`BinaryJointVelocityAction` for more details." +#: ../../docstring of +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.open_command_expr:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.open_command_expr:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.open_command_expr:1 +msgid "The joint command to move to *open* configuration." msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 msgid "" -":py:obj:`asset_name " -"`\\" +":py:obj:`close_command_expr " +"`\\" msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" +#: ../../docstring of +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.close_command_expr:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg.joint_names:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg.close_command_expr:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.close_command_expr:1 +msgid "The joint command to move to *close* configuration." msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg:1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg:1 msgid "" -":py:obj:`joint_names " -"`\\" +"Bases: " +":py:class:`~omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointActionCfg`" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1::1 -msgid "" -":py:obj:`open_command_expr " -"`\\" +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointPositionActionCfg:3 +msgid "See :class:`BinaryJointPositionAction` for more details." msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg.asset_name:1::1 -msgid "" -":py:obj:`close_command_expr " -"`\\" +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.BinaryJointVelocityActionCfg:3 +msgid "See :class:`BinaryJointVelocityAction` for more details." msgstr "" #: of omni.isaac.lab.envs.mdp.actions.actions_cfg.NonHolonomicActionCfg:3 @@ -1535,20 +1283,6 @@ msgstr "" msgid "Name of the body which has the dummy mechanism connected to." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.NonHolonomicActionCfg.body_name:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.NonHolonomicActionCfg.body_name:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.NonHolonomicActionCfg.body_name:1::1 msgid "" @@ -1596,7 +1330,7 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.NonHolonomicActionCfg.body_name:1::1 msgid "Scale factor for the action." msgstr "" @@ -1631,82 +1365,68 @@ msgstr "" #: of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 msgid "" -":py:obj:`asset_name " -"`\\" +":py:obj:`OffsetCfg " +"`\\" msgstr "" #: of +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.OffsetCfg:1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" +msgid "The offset pose from parent frame to child frame." msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 msgid "" ":py:obj:`joint_names " "`\\" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 msgid "" ":py:obj:`body_name " "`\\" msgstr "" #: ../../docstring of +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.body_name:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 msgid "Name of the body or frame for which IK is performed." msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 msgid "" ":py:obj:`body_offset " "`\\" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 msgid "Offset of target frame w.r.t." msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 msgid "" ":py:obj:`scale " "`\\" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 msgid "" ":py:obj:`controller " "`\\" msgstr "" #: ../../docstring of +#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 #: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.controller:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg:1::1 msgid "The configuration for the differential IK controller." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 -msgid "" -":py:obj:`OffsetCfg " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.OffsetCfg:1 -#: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.asset_name:1::1 -msgid "The offset pose from parent frame to child frame." -msgstr "" - #: of #: omni.isaac.lab.envs.mdp.actions.actions_cfg.DifferentialInverseKinematicsActionCfg.OffsetCfg:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg.Ranges:1 @@ -2081,12 +1801,6 @@ msgstr "" msgid "The configuration of the event term." msgstr "" -#: of omni.isaac.lab.envs.mdp.events.randomize_actuator_gains -#: omni.isaac.lab.envs.mdp.events.randomize_rigid_body_material.__init__ -#: omni.isaac.lab.envs.mdp.events.reset_root_state_from_terrain -msgid "Raises" -msgstr "" - #: of omni.isaac.lab.envs.mdp.events.randomize_rigid_body_material.__init__:6 msgid "If the asset is not a RigidObject or an Articulation." msgstr "" @@ -2160,12 +1874,6 @@ msgid "" "use this function only during the initialization of the environment." msgstr "" -#: of omni.isaac.lab.envs.mdp.events.randomize_actuator_gains:13 -msgid "" -"If the joint indices are in explicit motor mode. This operation is " -"currently not supported for explicit actuator models." -msgstr "" - #: of omni.isaac.lab.envs.mdp.events.randomize_joint_parameters:3 msgid "" "This function allows randomizing the joint parameters of the asset. These" @@ -2455,36 +2163,16 @@ msgid "" ":py:class:`~omni.isaac.lab.managers.manager_term_cfg.CommandTermCfg`" msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NullCommandCfg.resampling_time_range:1::1 -msgid "" -":py:obj:`resampling_time_range " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg.resampling_time_range:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.NullCommandCfg.resampling_time_range:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NullCommandCfg.resampling_time_range:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg.resampling_time_range:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg.resampling_time_range:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPoseCommandCfg.resampling_time_range:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPoseCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg.resampling_time_range:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 msgid "Time before commands are changed [s]." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NullCommandCfg.resampling_time_range:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 msgid "" @@ -2494,9 +2182,7 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg.asset_name:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg.asset_name:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPoseCommandCfg.asset_name:1 @@ -2514,7 +2200,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 msgid "Whether to use heading command or angular velocity command." msgstr "" @@ -2527,7 +2212,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 msgid "Scale factor to convert the heading error to angular velocity command." msgstr "" @@ -2540,7 +2224,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 msgid "The sampled probability of environments that should be standing still." msgstr "" @@ -2553,7 +2236,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 msgid "" "The sampled probability of environments where the robots follow the " @@ -2569,8 +2251,8 @@ msgid "" msgstr "" #: ../../docstring of +#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg.heading_command:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg.ranges:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg.ranges:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 msgid "Distribution ranges for the velocity commands." @@ -2584,7 +2266,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 msgid "The configuration for the goal velocity visualization marker." msgstr "" @@ -2597,25 +2278,10 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 msgid "The configuration for the current velocity visualization marker." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 -msgid "" -":py:obj:`resampling_time_range " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformVelocityCommandCfg.asset_name:1::1 msgid "" @@ -2766,84 +2432,21 @@ msgstr "" #: of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 msgid "" -":py:obj:`heading_command " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 -msgid "" -":py:obj:`ranges " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 -msgid "" -":py:obj:`resampling_time_range " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 -msgid "" -":py:obj:`heading_control_stiffness " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 -msgid "" -":py:obj:`rel_standing_envs " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 -msgid "" -":py:obj:`rel_heading_envs " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 -msgid "" -":py:obj:`goal_vel_visualizer_cfg " -"`\\" +":py:obj:`Ranges " +"`\\" msgstr "" #: of +#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg.Ranges:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg:1::1 -msgid "" -":py:obj:`current_vel_visualizer_cfg " -"`\\" +msgid "Normal distribution ranges for the velocity commands." msgstr "" #: of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg.heading_command:1::1 msgid "" -":py:obj:`Ranges " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg.Ranges:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.NormalVelocityCommandCfg.heading_command:1::1 -msgid "Normal distribution ranges for the velocity commands." +":py:obj:`ranges " +"`\\" msgstr "" #: of @@ -2936,20 +2539,6 @@ msgstr "" msgid "Whether to make the quaternion unique or not." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPoseCommandCfg:1::1 -msgid "" -":py:obj:`resampling_time_range " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPoseCommandCfg:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPoseCommandCfg:1::1 msgid "" @@ -2971,7 +2560,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPoseCommandCfg:1::1 msgid "The configuration for the goal pose visualization marker." @@ -3110,20 +2698,6 @@ msgid "" "FRAME_MARKER_CFG." msgstr "" -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg:1::1 -msgid "" -":py:obj:`resampling_time_range " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg:1::1 msgid "" @@ -3140,7 +2714,6 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg.simple_heading:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg.simple_heading:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg:1::1 msgid "Whether to use simple heading or not." @@ -3175,7 +2748,7 @@ msgstr "" #: of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg.Ranges:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg.resampling_time_range:1::1 +#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg.Ranges:1 #: omni.isaac.lab.envs.mdp.commands.commands_cfg.UniformPose2dCommandCfg.resampling_time_range:1::1 msgid "Uniform distribution ranges for the position commands." @@ -3240,40 +2813,12 @@ msgstr "" #: of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 msgid "" -":py:obj:`resampling_time_range " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 -msgid "" -":py:obj:`asset_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 -msgid "" -":py:obj:`simple_heading " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 -msgid "" -":py:obj:`goal_pose_visualizer_cfg " -"`\\" +":py:obj:`Ranges " +"`\\" msgstr "" #: of -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 +#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg.resampling_time_range:1::1 msgid "" ":py:obj:`ranges " "`\\" @@ -3281,15 +2826,8 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg.ranges:1 -#: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg:1::1 -msgid "Distribution ranges for the sampled commands." -msgstr "" - -#: of #: omni.isaac.lab.envs.mdp.commands.commands_cfg.TerrainBasedPose2dCommandCfg.resampling_time_range:1::1 -msgid "" -":py:obj:`Ranges " -"`\\" +msgid "Distribution ranges for the sampled commands." msgstr "" #: of diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.envs.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.envs.po index 0fab7ea0b5..2cc38b707b 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.envs.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.envs.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-10-30 16:09+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.envs.rst:2 msgid "omni.isaac.lab.envs" @@ -589,10 +589,8 @@ msgid "" msgstr "" #: of omni.isaac.lab.envs.DirectRLEnv.np_random -#: omni.isaac.lab.envs.DirectRLEnv.np_random_seed #: omni.isaac.lab.envs.DirectRLEnv.unwrapped #: omni.isaac.lab.envs.ManagerBasedRLEnv.np_random -#: omni.isaac.lab.envs.ManagerBasedRLEnv.np_random_seed #: omni.isaac.lab.envs.ManagerBasedRLEnv.unwrapped #: omni.isaac.lab.envs.direct_marl_env.DirectMARLEnv.action_space #: omni.isaac.lab.envs.direct_marl_env.DirectMARLEnv.observation_space @@ -660,7 +658,6 @@ msgstr "" #: omni.isaac.lab.envs.direct_marl_env_cfg.DirectMARLEnvCfg:1::1 #: omni.isaac.lab.envs.direct_rl_env_cfg.DirectRLEnvCfg:1::1 #: omni.isaac.lab.envs.manager_based_env_cfg.ManagerBasedEnvCfg:1::1 -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 msgid "Viewer configuration." msgstr "" @@ -673,7 +670,6 @@ msgstr "" #: omni.isaac.lab.envs.direct_marl_env_cfg.DirectMARLEnvCfg:1::1 #: omni.isaac.lab.envs.direct_rl_env_cfg.DirectRLEnvCfg:1::1 #: omni.isaac.lab.envs.manager_based_env_cfg.ManagerBasedEnvCfg:1::1 -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 msgid "Physics simulation configuration." msgstr "" @@ -686,7 +682,6 @@ msgstr "" #: omni.isaac.lab.envs.direct_marl_env_cfg.DirectMARLEnvCfg:1::1 #: omni.isaac.lab.envs.direct_rl_env_cfg.DirectRLEnvCfg:1::1 #: omni.isaac.lab.envs.manager_based_env_cfg.ManagerBasedEnvCfg:1::1 -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 msgid "The seed for the random number generator." msgstr "" @@ -702,7 +697,6 @@ msgstr "" #: omni.isaac.lab.envs.direct_marl_env_cfg.DirectMARLEnvCfg:1::1 #: omni.isaac.lab.envs.direct_rl_env_cfg.DirectRLEnvCfg:1::1 #: omni.isaac.lab.envs.manager_based_env_cfg.ManagerBasedEnvCfg:1::1 -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 msgid "Number of control action updates @ sim dt per policy dt." msgstr "" @@ -718,7 +712,6 @@ msgstr "" #: omni.isaac.lab.envs.direct_marl_env_cfg.DirectMARLEnvCfg:1::1 #: omni.isaac.lab.envs.direct_rl_env_cfg.DirectRLEnvCfg:1::1 #: omni.isaac.lab.envs.manager_based_env_cfg.ManagerBasedEnvCfg:1::1 -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 msgid "Scene settings." msgstr "" @@ -732,7 +725,6 @@ msgstr "" #: ../../docstring of omni.isaac.lab.envs.ManagerBasedEnvCfg.observations:1 #: omni.isaac.lab.envs.ManagerBasedRLEnvCfg.observations:1 #: omni.isaac.lab.envs.manager_based_env_cfg.ManagerBasedEnvCfg:1::1 -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 msgid "Observation space settings." msgstr "" @@ -744,7 +736,6 @@ msgstr "" #: ../../docstring of omni.isaac.lab.envs.ManagerBasedEnvCfg.actions:1 #: omni.isaac.lab.envs.ManagerBasedRLEnvCfg.actions:1 #: omni.isaac.lab.envs.manager_based_env_cfg.ManagerBasedEnvCfg:1::1 -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 msgid "Action space settings." msgstr "" @@ -757,7 +748,6 @@ msgstr "" #: omni.isaac.lab.envs.direct_marl_env_cfg.DirectMARLEnvCfg:1::1 #: omni.isaac.lab.envs.direct_rl_env_cfg.DirectRLEnvCfg:1::1 #: omni.isaac.lab.envs.manager_based_env_cfg.ManagerBasedEnvCfg:1::1 -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 msgid "Event settings." msgstr "" @@ -770,7 +760,6 @@ msgstr "" #: of omni.isaac.lab.envs.direct_rl_env_cfg.DirectRLEnvCfg:1::1 #: omni.isaac.lab.envs.manager_based_env_cfg.ManagerBasedEnvCfg:1::1 -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 msgid "" "Whether a render step is performed again after at least one environment " "has been reset." @@ -1043,22 +1032,6 @@ msgid "" "will initialise with a random seed." msgstr "" -#: of -#: omni.isaac.lab.envs.manager_based_rl_env.ManagerBasedRLEnv:1::1 -msgid "" -":py:obj:`np_random_seed " -"`\\" -msgstr "" - -#: of omni.isaac.lab.envs.DirectRLEnv.np_random_seed:1 -#: omni.isaac.lab.envs.ManagerBasedRLEnv.np_random_seed:1 -#: omni.isaac.lab.envs.direct_rl_env.DirectRLEnv:1::1 -#: omni.isaac.lab.envs.manager_based_rl_env.ManagerBasedRLEnv:1::1 -msgid "" -"Returns the environment's internal :attr:`_np_random_seed` that if not " -"set will first initialise with a random int as seed." -msgstr "" - #: of #: omni.isaac.lab.envs.manager_based_rl_env.ManagerBasedRLEnv:1::1 msgid ":py:obj:`num_envs `\\" @@ -1140,18 +1113,6 @@ msgstr "" msgid "Gets the attribute `name` from the environment." msgstr "" -#: of omni.isaac.lab.envs.ManagerBasedRLEnv.is_vector_env:1::1 -msgid "" -":py:obj:`has_wrapper_attr " -"`\\ \\(name\\)" -msgstr "" - -#: gymnasium.core.Env.has_wrapper_attr:1 of -#: omni.isaac.lab.envs.DirectRLEnv.is_vector_env:1::1 -#: omni.isaac.lab.envs.ManagerBasedRLEnv.is_vector_env:1::1 -msgid "Checks if the attribute `name` exists in the environment." -msgstr "" - #: of omni.isaac.lab.envs.ManagerBasedRLEnv.is_vector_env:1::1 msgid "" ":py:obj:`reset `\\ " @@ -1164,19 +1125,6 @@ msgid "" "\\(\\[seed\\]\\)" msgstr "" -#: of omni.isaac.lab.envs.ManagerBasedRLEnv.is_vector_env:1::1 -msgid "" -":py:obj:`set_wrapper_attr " -"`\\ \\(name\\, " -"value\\)" -msgstr "" - -#: gymnasium.core.Env.set_wrapper_attr:1 of -#: omni.isaac.lab.envs.DirectRLEnv.is_vector_env:1::1 -#: omni.isaac.lab.envs.ManagerBasedRLEnv.is_vector_env:1::1 -msgid "Sets the attribute `name` on the environment with `value`." -msgstr "" - #: of omni.isaac.lab.envs.manager_based_rl_env.ManagerBasedRLEnv.__init__:3 msgid "The configuration for the environment." msgstr "" @@ -1288,33 +1236,16 @@ msgstr "" msgid "Instances of `np.random.Generator`" msgstr "" -#: of omni.isaac.lab.envs.DirectRLEnv.np_random_seed:3 -#: omni.isaac.lab.envs.ManagerBasedRLEnv.np_random_seed:3 -msgid "" -"If :attr:`np_random_seed` was set directly instead of through " -":meth:`reset` or :meth:`set_np_random_through_seed`, the seed will take " -"the value -1." -msgstr "" - -#: of omni.isaac.lab.envs.DirectRLEnv.np_random_seed:6 -#: omni.isaac.lab.envs.ManagerBasedRLEnv.np_random_seed:6 -msgid "" -"the seed of the current `np_random` or -1, if the seed of the rng is " -"unknown" +#: of omni.isaac.lab.envs.DirectRLEnv.unwrapped:3 +#: omni.isaac.lab.envs.ManagerBasedRLEnv.unwrapped:3 +msgid "The base non-wrapped :class:`gymnasium.Env` instance" msgstr "" -#: of omni.isaac.lab.envs.DirectRLEnv.np_random_seed -#: omni.isaac.lab.envs.DirectRLEnv.unwrapped -#: omni.isaac.lab.envs.ManagerBasedRLEnv.np_random_seed +#: of omni.isaac.lab.envs.DirectRLEnv.unwrapped #: omni.isaac.lab.envs.ManagerBasedRLEnv.unwrapped msgid "Return type" msgstr "" -#: of omni.isaac.lab.envs.DirectRLEnv.unwrapped:3 -#: omni.isaac.lab.envs.ManagerBasedRLEnv.unwrapped:3 -msgid "The base non-wrapped :class:`gymnasium.Env` instance" -msgstr "" - #: of omni.isaac.lab.envs.manager_based_rl_env_cfg.ManagerBasedRLEnvCfg:1 msgid "" "Bases: " @@ -1377,57 +1308,6 @@ msgstr "" msgid "Reward settings." msgstr "" -#: of -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 -msgid ":py:obj:`viewer `\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 -msgid ":py:obj:`sim `\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 -msgid ":py:obj:`seed `\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 -msgid "" -":py:obj:`decimation " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 -msgid ":py:obj:`scene `\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 -msgid "" -":py:obj:`observations " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 -msgid ":py:obj:`actions `\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 -msgid ":py:obj:`events `\\" -msgstr "" - -#: of -#: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 -msgid "" -":py:obj:`rerender_on_reset " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.envs.ui.manager_based_rl_env_window.ManagerBasedRLEnvWindow:1::1 msgid "" @@ -1632,12 +1512,6 @@ msgstr "" msgid ":py:obj:`np_random `\\" msgstr "" -#: of omni.isaac.lab.envs.direct_rl_env.DirectRLEnv:1::1 -msgid "" -":py:obj:`np_random_seed " -"`\\" -msgstr "" - #: of omni.isaac.lab.envs.direct_rl_env.DirectRLEnv:1::1 msgid ":py:obj:`unwrapped `\\" msgstr "" @@ -1691,18 +1565,6 @@ msgid "" "`\\ \\(name\\)" msgstr "" -#: of omni.isaac.lab.envs.DirectRLEnv.is_vector_env:1::1 -msgid "" -":py:obj:`has_wrapper_attr " -"`\\ \\(name\\)" -msgstr "" - -#: of omni.isaac.lab.envs.DirectRLEnv.is_vector_env:1::1 -msgid "" -":py:obj:`set_wrapper_attr " -"`\\ \\(name\\, value\\)" -msgstr "" - #: of omni.isaac.lab.envs.direct_rl_env.DirectRLEnv.step:3 msgid "" "The environment steps forward at a fixed time-step, while the physics " diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.managers.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.managers.po index 9b5cecaf51..9ce033bf86 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.managers.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.managers.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-11-06 14:26+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.managers.rst:2 msgid "omni.isaac.lab.managers" @@ -868,11 +868,7 @@ msgstr "" msgid ":py:obj:`params `\\" msgstr "" -#: of omni.isaac.lab.managers.CurriculumTermCfg.func:1::1 -#: omni.isaac.lab.managers.EventTermCfg.params:1::1 -#: omni.isaac.lab.managers.ManagerTermBaseCfg.func:1::1 -#: omni.isaac.lab.managers.ObservationTermCfg.func:1::1 -#: omni.isaac.lab.managers.TerminationTermCfg.params:1::1 +#: of omni.isaac.lab.managers.ManagerTermBaseCfg.func:1::1 msgid "The parameters to be passed to the function as keyword arguments." msgstr "" @@ -1341,10 +1337,6 @@ msgstr "" msgid "The scale to apply to the observation after clipping." msgstr "" -#: of omni.isaac.lab.managers.ObservationTermCfg.func:1::1 -msgid ":py:obj:`params `\\" -msgstr "" - #: ../../docstring of omni.isaac.lab.managers.ObservationTermCfg.func:3 msgid "" "This function should take the environment object and any other parameters" @@ -1390,6 +1382,13 @@ msgid "" "in which case no scaling is applied (same as setting scale to :obj:`1`)." msgstr "" +#: ../../docstring of omni.isaac.lab.managers.ObservationTermCfg.scale:4 +msgid "" +"We leverage PyTorch broadcasting to scale the observation tensor with the" +" provided value. If a tuple is provided, please make sure the length of " +"the tuple matches the dimensions of the tensor outputted from the term." +msgstr "" + #: ../../source/api/lab/omni.isaac.lab.managers.rst:69 msgid "Action Manager" msgstr "" @@ -2076,10 +2075,6 @@ msgstr "" msgid "The configuration of the event term." msgstr "" -#: of omni.isaac.lab.managers.EventTermCfg.params:1::1 -msgid ":py:obj:`params `\\" -msgstr "" - #: of omni.isaac.lab.managers.EventTermCfg.params:1::1 msgid ":py:obj:`func `\\" msgstr "" @@ -2848,10 +2843,6 @@ msgstr "" msgid "The configuration of the termination term." msgstr "" -#: of omni.isaac.lab.managers.TerminationTermCfg.params:1::1 -msgid ":py:obj:`params `\\" -msgstr "" - #: of omni.isaac.lab.managers.TerminationTermCfg.params:1::1 msgid ":py:obj:`func `\\" msgstr "" @@ -2998,10 +2989,6 @@ msgstr "" msgid ":py:obj:`func `\\" msgstr "" -#: of omni.isaac.lab.managers.CurriculumTermCfg.func:1::1 -msgid ":py:obj:`params `\\" -msgstr "" - #: ../../docstring of omni.isaac.lab.managers.CurriculumTermCfg.func:3 msgid "" "This function should take the environment object, environment indices and" diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sensors.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sensors.po index c0414408fe..f9f19bc2bf 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sensors.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sensors.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-10-30 16:09+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.sensors.rst:2 msgid "omni.isaac.lab.sensors" @@ -669,17 +669,12 @@ msgstr "" #: ../../docstring of omni.isaac.lab.sensors.CameraCfg.prim_path:1 #: omni.isaac.lab.sensors.ContactSensorCfg.prim_path:1 -#: omni.isaac.lab.sensors.ContactSensorCfg.track_pose:1::1 #: omni.isaac.lab.sensors.ImuCfg.prim_path:1 #: omni.isaac.lab.sensors.RayCasterCameraCfg.prim_path:1 #: omni.isaac.lab.sensors.RayCasterCfg.prim_path:1 #: omni.isaac.lab.sensors.SensorBaseCfg.prim_path:1 #: omni.isaac.lab.sensors.SensorBaseCfg.prim_path:1::1 #: omni.isaac.lab.sensors.TiledCameraCfg.prim_path:1 -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.imu.imu_cfg.ImuCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 msgid "Prim path (or expression) to the sensor." msgstr "" @@ -689,13 +684,7 @@ msgid "" "`\\" msgstr "" -#: of omni.isaac.lab.sensors.ContactSensorCfg.track_pose:1::1 -#: omni.isaac.lab.sensors.SensorBaseCfg.prim_path:1::1 -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.frame_transformer.frame_transformer_cfg.FrameTransformerCfg.FrameCfg:1::1 -#: omni.isaac.lab.sensors.imu.imu_cfg.ImuCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 +#: of omni.isaac.lab.sensors.SensorBaseCfg.prim_path:1::1 msgid "Update period of the sensor buffers (in seconds)." msgstr "" @@ -705,13 +694,7 @@ msgid "" "`\\" msgstr "" -#: of omni.isaac.lab.sensors.ContactSensorCfg.track_pose:1::1 -#: omni.isaac.lab.sensors.SensorBaseCfg.prim_path:1::1 -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.frame_transformer.frame_transformer_cfg.FrameTransformerCfg.FrameCfg:1::1 -#: omni.isaac.lab.sensors.imu.imu_cfg.ImuCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 +#: of omni.isaac.lab.sensors.SensorBaseCfg.prim_path:1::1 msgid "Number of past frames to store in the sensor buffers." msgstr "" @@ -719,13 +702,7 @@ msgstr "" msgid ":py:obj:`debug_vis `\\" msgstr "" -#: of omni.isaac.lab.sensors.ContactSensorCfg.track_pose:1::1 -#: omni.isaac.lab.sensors.SensorBaseCfg.prim_path:1::1 -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.frame_transformer.frame_transformer_cfg.FrameTransformerCfg.FrameCfg:1::1 -#: omni.isaac.lab.sensors.imu.imu_cfg.ImuCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 +#: of omni.isaac.lab.sensors.SensorBaseCfg.prim_path:1::1 msgid "Whether to visualize the sensor." msgstr "" @@ -1460,28 +1437,6 @@ msgstr "" msgid "List of sensor names/types to enable for the camera." msgstr "" -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid ":py:obj:`prim_path `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid ":py:obj:`update_period `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`history_length " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid ":py:obj:`debug_vis `\\" -msgstr "" - #: of #: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 msgid ":py:obj:`width `\\" @@ -1564,7 +1519,6 @@ msgstr "" #: omni.isaac.lab.sensors.OffsetCfg.pos:1::1 #: omni.isaac.lab.sensors.RayCasterCameraCfg.OffsetCfg.pos:1::1 #: omni.isaac.lab.sensors.RayCasterCfg.OffsetCfg.pos:1::1 -#: omni.isaac.lab.sensors.TiledCameraCfg.OffsetCfg.pos:1::1 msgid "Translation w.r.t." msgstr "" @@ -1577,7 +1531,6 @@ msgstr "" #: omni.isaac.lab.sensors.OffsetCfg.pos:1::1 #: omni.isaac.lab.sensors.RayCasterCameraCfg.OffsetCfg.pos:1::1 #: omni.isaac.lab.sensors.RayCasterCfg.OffsetCfg.pos:1::1 -#: omni.isaac.lab.sensors.TiledCameraCfg.OffsetCfg.pos:1::1 msgid "Quaternion rotation (w, x, y, z) w.r.t." msgstr "" @@ -1589,7 +1542,6 @@ msgstr "" #: of omni.isaac.lab.sensors.CameraCfg.OffsetCfg.pos:1::1 #: omni.isaac.lab.sensors.RayCasterCameraCfg.OffsetCfg.pos:1::1 -#: omni.isaac.lab.sensors.TiledCameraCfg.OffsetCfg.pos:1::1 msgid "The convention in which the frame offset is applied." msgstr "" @@ -1908,83 +1860,6 @@ msgstr "" msgid ":py:obj:`OffsetCfg `\\" msgstr "" -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid ":py:obj:`prim_path `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`update_period " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`history_length " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid ":py:obj:`debug_vis `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid ":py:obj:`offset `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid ":py:obj:`spawn `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid ":py:obj:`data_types `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid ":py:obj:`width `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid ":py:obj:`height `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`semantic_filter " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`colorize_semantic_segmentation " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`colorize_instance_id_segmentation " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`colorize_instance_segmentation " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sensors.camera.camera_cfg.CameraCfg.OffsetCfg:1::1 msgid "" @@ -1997,20 +1872,6 @@ msgstr "" msgid "Whether to return the latest camera pose when fetching the camera's data." msgstr "" -#: of omni.isaac.lab.sensors.TiledCameraCfg.OffsetCfg.pos:1::1 -msgid ":py:obj:`pos `\\" -msgstr "" - -#: of omni.isaac.lab.sensors.TiledCameraCfg.OffsetCfg.pos:1::1 -msgid ":py:obj:`rot `\\" -msgstr "" - -#: of omni.isaac.lab.sensors.TiledCameraCfg.OffsetCfg.pos:1::1 -msgid "" -":py:obj:`convention " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.sensors.TiledCameraCfg.return_latest_camera_pose:1 msgid "" @@ -2520,26 +2381,6 @@ msgid "" "contacts)." msgstr "" -#: of omni.isaac.lab.sensors.ContactSensorCfg.track_pose:1::1 -msgid ":py:obj:`prim_path `\\" -msgstr "" - -#: of omni.isaac.lab.sensors.ContactSensorCfg.track_pose:1::1 -msgid "" -":py:obj:`update_period " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sensors.ContactSensorCfg.track_pose:1::1 -msgid "" -":py:obj:`history_length " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sensors.ContactSensorCfg.track_pose:1::1 -msgid ":py:obj:`debug_vis `\\" -msgstr "" - #: of omni.isaac.lab.sensors.ContactSensorCfg.track_pose:1::1 msgid "" ":py:obj:`force_threshold " @@ -2572,7 +2413,6 @@ msgstr "" #: of omni.isaac.lab.sensors.ContactSensorCfg.track_pose:1::1 #: omni.isaac.lab.sensors.frame_transformer.frame_transformer_cfg.FrameTransformerCfg.FrameCfg:1::1 #: omni.isaac.lab.sensors.imu.imu_cfg.ImuCfg.OffsetCfg:1::1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 #: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 msgid "The configuration object for the visualization markers." msgstr "" @@ -2895,27 +2735,6 @@ msgstr "" msgid "Information specific to a coordinate frame." msgstr "" -#: of -#: omni.isaac.lab.sensors.frame_transformer.frame_transformer_cfg.FrameTransformerCfg.FrameCfg:1::1 -msgid "" -":py:obj:`update_period " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.frame_transformer.frame_transformer_cfg.FrameTransformerCfg.FrameCfg:1::1 -msgid "" -":py:obj:`history_length " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.frame_transformer.frame_transformer_cfg.FrameTransformerCfg.FrameCfg:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sensors.frame_transformer.frame_transformer_cfg.FrameTransformerCfg.FrameCfg:1::1 msgid "" @@ -3171,7 +2990,6 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.sensors.RayCasterCameraCfg.mesh_prim_paths:1 #: omni.isaac.lab.sensors.RayCasterCfg.mesh_prim_paths:1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 #: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 msgid "The list of mesh primitive paths to ray cast against." msgstr "" @@ -3181,30 +2999,6 @@ msgstr "" msgid ":py:obj:`offset `\\" msgstr "" -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 -msgid ":py:obj:`prim_path `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`update_period " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`history_length " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 -msgid ":py:obj:`debug_vis `\\" -msgstr "" - #: of #: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 msgid "" @@ -3215,7 +3009,6 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.sensors.RayCasterCameraCfg.attach_yaw_only:1 #: omni.isaac.lab.sensors.RayCasterCfg.attach_yaw_only:1 -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 #: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 msgid "" "Whether the rays' starting positions and directions only track the yaw " @@ -3240,7 +3033,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 #: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 msgid "Maximum distance (in meters) from the sensor to ray cast to." msgstr "" @@ -3251,7 +3043,6 @@ msgid ":py:obj:`drift_range `\\ msgstr "" #: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 #: omni.isaac.lab.sensors.ray_caster.ray_caster_cfg.RayCasterCfg.OffsetCfg:1::1 msgid "The range of drift (in meters) to add to the ray starting positions (xyz)." msgstr "" @@ -3483,74 +3274,11 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`prim_path " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`update_period " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`history_length " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`debug_vis " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`mesh_prim_paths " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 msgid ":py:obj:`offset `\\" msgstr "" -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`attach_yaw_only " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`max_distance " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`drift_range " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 -msgid "" -":py:obj:`visualizer_cfg " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sensors.ray_caster.ray_caster_camera_cfg.RayCasterCameraCfg.OffsetCfg:1::1 msgid "" @@ -3675,22 +3403,6 @@ msgstr "" msgid ":py:obj:`OffsetCfg `\\" msgstr "" -#: of omni.isaac.lab.sensors.imu.imu_cfg.ImuCfg.OffsetCfg:1::1 -msgid ":py:obj:`prim_path `\\" -msgstr "" - -#: of omni.isaac.lab.sensors.imu.imu_cfg.ImuCfg.OffsetCfg:1::1 -msgid ":py:obj:`update_period `\\" -msgstr "" - -#: of omni.isaac.lab.sensors.imu.imu_cfg.ImuCfg.OffsetCfg:1::1 -msgid ":py:obj:`history_length `\\" -msgstr "" - -#: of omni.isaac.lab.sensors.imu.imu_cfg.ImuCfg.OffsetCfg:1::1 -msgid ":py:obj:`debug_vis `\\" -msgstr "" - #: of omni.isaac.lab.sensors.imu.imu_cfg.ImuCfg.OffsetCfg:1::1 msgid ":py:obj:`offset `\\" msgstr "" diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.converters.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.converters.po index b481f230db..1529dfeb4c 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.converters.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.converters.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-11-06 14:26+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.sim.converters.rst:2 msgid "omni.isaac.lab.sim.converters" @@ -313,9 +313,7 @@ msgstr "" #: omni.isaac.lab.sim.converters.AssetConverterBaseCfg.asset_path:1 #: omni.isaac.lab.sim.converters.AssetConverterBaseCfg.asset_path:1::1 #: omni.isaac.lab.sim.converters.MeshConverterCfg.asset_path:1 -#: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 #: omni.isaac.lab.sim.converters.UrdfConverterCfg.asset_path:1 -#: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 msgid "The absolute path to the asset file to convert into USD." msgstr "" @@ -328,8 +326,6 @@ msgstr "" #: of #: omni.isaac.lab.sim.converters.AssetConverterBaseCfg.asset_path:1::1 -#: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 -#: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 msgid "The output directory path to store the generated USD file." msgstr "" @@ -342,8 +338,6 @@ msgstr "" #: of #: omni.isaac.lab.sim.converters.AssetConverterBaseCfg.asset_path:1::1 -#: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 -#: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 msgid "The name of the generated usd file." msgstr "" @@ -356,8 +350,6 @@ msgstr "" #: of #: omni.isaac.lab.sim.converters.AssetConverterBaseCfg.asset_path:1::1 -#: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 -#: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 msgid "Force the conversion of the asset file to usd." msgstr "" @@ -370,8 +362,6 @@ msgstr "" #: of #: omni.isaac.lab.sim.converters.AssetConverterBaseCfg.asset_path:1::1 -#: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 -#: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 msgid "Make the generated USD file instanceable." msgstr "" @@ -587,60 +577,59 @@ msgstr "" #: of #: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 msgid "" -":py:obj:`asset_path " -"`\\" +":py:obj:`collision_props " +"`\\" msgstr "" #: of #: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 -msgid "" -":py:obj:`usd_dir " -"`\\" +msgid "Collision properties to apply to the USD." msgstr "" #: of #: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 msgid "" -":py:obj:`usd_file_name " -"`\\" +":py:obj:`collision_approximation " +"`\\" msgstr "" #: of #: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 -msgid "" -":py:obj:`force_usd_conversion " -"`\\" +msgid "Collision approximation method to use." msgstr "" #: of #: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 msgid "" -":py:obj:`make_instanceable " -"`\\" +":py:obj:`translation " +"`\\" +msgstr "" + +#: of +#: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 +msgid "The translation of the mesh to the origin." msgstr "" #: of #: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 msgid "" -":py:obj:`collision_props " -"`\\" +":py:obj:`rotation " +"`\\" msgstr "" #: of #: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 -msgid "Collision properties to apply to the USD." +msgid "The rotation of the mesh in quaternion format (w, x, y, z)." msgstr "" #: of #: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 -msgid "" -":py:obj:`collision_approximation " -"`\\" +msgid ":py:obj:`scale `\\" msgstr "" #: of #: omni.isaac.lab.sim.converters.MeshConverterCfg.mass_props:1::1 -msgid "Collision approximation method to use." +msgid "The scale of the mesh." msgstr "" #: ../../docstring of @@ -692,6 +681,21 @@ msgstr "" msgid "\"none\" causes no collision mesh to be added." msgstr "" +#: ../../docstring of +#: omni.isaac.lab.sim.converters.MeshConverterCfg.translation:1 +msgid "The translation of the mesh to the origin. Defaults to (0.0, 0.0, 0.0)." +msgstr "" + +#: ../../docstring of omni.isaac.lab.sim.converters.MeshConverterCfg.rotation:1 +msgid "" +"The rotation of the mesh in quaternion format (w, x, y, z). Defaults to " +"(1.0, 0.0, 0.0, 0.0)." +msgstr "" + +#: ../../docstring of omni.isaac.lab.sim.converters.MeshConverterCfg.scale:1 +msgid "The scale of the mesh. Defaults to (1.0, 1.0, 1.0)." +msgstr "" + #: ../../source/api/lab/omni.isaac.lab.sim.converters.rst:43 msgid "URDF Converter" msgstr "" @@ -814,7 +818,7 @@ msgid "" "`\\" msgstr "" -#: of +#: ../../docstring of omni.isaac.lab.sim.converters.UrdfConverterCfg.fix_base:1 #: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 msgid "Create a fix joint to the root/base link." msgstr "" @@ -831,41 +835,6 @@ msgstr "" msgid "Consolidate links that are connected by fixed joints." msgstr "" -#: of -#: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 -msgid "" -":py:obj:`asset_path " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 -msgid "" -":py:obj:`usd_dir " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 -msgid "" -":py:obj:`usd_file_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 -msgid "" -":py:obj:`force_usd_conversion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 -msgid "" -":py:obj:`make_instanceable " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sim.converters.UrdfConverterCfg.link_density:1::1 msgid "" @@ -957,10 +926,6 @@ msgid "" " False." msgstr "" -#: ../../docstring of omni.isaac.lab.sim.converters.UrdfConverterCfg.fix_base:1 -msgid "Create a fix joint to the root/base link. Defaults to True." -msgstr "" - #: ../../docstring of #: omni.isaac.lab.sim.converters.UrdfConverterCfg.merge_fixed_joints:1 msgid "Consolidate links that are connected by fixed joints. Defaults to False." diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.po index 5db95401fd..1a144bf398 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-10-30 16:09+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.sim.rst:2 msgid "omni.isaac.lab.sim" @@ -259,7 +259,6 @@ msgid "Different rendering modes for the simulation." msgstr "" #: of omni.isaac.lab.sim.simulation_context.SimulationContext:1 -#: omni.isaac.lab.sim.simulation_context.SimulationContext.RenderMode:1 msgid "**Methods:**" msgstr "" @@ -477,7 +476,7 @@ msgid "**Attributes:**" msgstr "" #: of -#: omni.isaac.lab.sim.simulation_context.SimulationContext.RenderMode:1::1 +#: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_GUI_OR_RENDERING:1::1 msgid "" ":py:obj:`NO_GUI_OR_RENDERING " "`\\" @@ -485,42 +484,42 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_GUI_OR_RENDERING:1 -#: omni.isaac.lab.sim.simulation_context.SimulationContext.RenderMode:1::1 +#: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_GUI_OR_RENDERING:1::1 msgid "" "The simulation is running without a GUI and off-screen rendering is " "disabled." msgstr "" #: of -#: omni.isaac.lab.sim.simulation_context.SimulationContext.RenderMode:1::1 +#: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_GUI_OR_RENDERING:1::1 msgid "" ":py:obj:`NO_RENDERING " "`\\" msgstr "" #: ../../docstring of +#: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_GUI_OR_RENDERING:1::1 #: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_RENDERING:1 -#: omni.isaac.lab.sim.simulation_context.SimulationContext.RenderMode:1::1 msgid "No rendering, where only other UI elements are updated at a lower rate." msgstr "" #: of -#: omni.isaac.lab.sim.simulation_context.SimulationContext.RenderMode:1::1 +#: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_GUI_OR_RENDERING:1::1 msgid "" ":py:obj:`PARTIAL_RENDERING " "`\\" msgstr "" #: ../../docstring of +#: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_GUI_OR_RENDERING:1::1 #: omni.isaac.lab.sim.SimulationContext.RenderMode.PARTIAL_RENDERING:1 -#: omni.isaac.lab.sim.simulation_context.SimulationContext.RenderMode:1::1 msgid "" "Partial rendering, where the simulation cameras and UI elements are " "updated." msgstr "" #: of -#: omni.isaac.lab.sim.simulation_context.SimulationContext.RenderMode:1::1 +#: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_GUI_OR_RENDERING:1::1 msgid "" ":py:obj:`FULL_RENDERING " "`\\" @@ -528,19 +527,12 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.sim.SimulationContext.RenderMode.FULL_RENDERING:1 -#: omni.isaac.lab.sim.simulation_context.SimulationContext.RenderMode:1::1 +#: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_GUI_OR_RENDERING:1::1 msgid "" "Full rendering, where all the simulation viewports, cameras and UI " "elements are updated." msgstr "" -#: of -#: omni.isaac.lab.sim.SimulationContext.RenderMode.NO_GUI_OR_RENDERING:1::1 -msgid "" -":py:obj:`__new__ " -"`\\ \\(value\\)" -msgstr "" - #: of omni.isaac.lab.sim.simulation_context.SimulationContext.__init__ #: omni.isaac.lab.sim.simulation_context.SimulationContext.get_setting #: omni.isaac.lab.sim.simulation_context.SimulationContext.render diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.spawners.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.spawners.po index 3ab03fcb17..1edf8812be 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.spawners.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.sim.spawners.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-10-22 15:18+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.sim.spawners.rst:2 msgid "omni.isaac.lab.sim.spawners" @@ -206,7 +206,6 @@ msgid "" msgstr "" #: of omni.isaac.lab.sim.spawners.from_files.from_files_cfg.GroundPlaneCfg:1 -#: omni.isaac.lab.sim.spawners.from_files.from_files_cfg.UrdfFileCfg:1 #: omni.isaac.lab.sim.spawners.from_files.from_files_cfg.UsdFileCfg:1 #: omni.isaac.lab.sim.spawners.lights.lights_cfg.CylinderLightCfg:1 #: omni.isaac.lab.sim.spawners.lights.lights_cfg.DiskLightCfg:1 @@ -247,9 +246,7 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1 -#: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1::1 #: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.func:1 -#: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 #: omni.isaac.lab.sim.spawners.SpawnerCfg.func:1 #: omni.isaac.lab.sim.spawners.SpawnerCfg.func:1::1 msgid "Function to use for spawning the asset." @@ -259,35 +256,7 @@ msgstr "" msgid ":py:obj:`visible `\\" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1::1 -#: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 -#: omni.isaac.lab.sim.spawners.SpawnerCfg.func:1::1 -#: omni.isaac.lab.sim.spawners.from_files.GroundPlaneCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -#: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 +#: of omni.isaac.lab.sim.spawners.SpawnerCfg.func:1::1 msgid "Whether the spawned asset should be visible." msgstr "" @@ -297,35 +266,7 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1::1 -#: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 -#: omni.isaac.lab.sim.spawners.SpawnerCfg.func:1::1 -#: omni.isaac.lab.sim.spawners.from_files.GroundPlaneCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -#: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 +#: of omni.isaac.lab.sim.spawners.SpawnerCfg.func:1::1 msgid "List of semantic tags to add to the spawned asset." msgstr "" @@ -335,35 +276,7 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1::1 -#: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 -#: omni.isaac.lab.sim.spawners.SpawnerCfg.func:1::1 -#: omni.isaac.lab.sim.spawners.from_files.GroundPlaneCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -#: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 +#: of omni.isaac.lab.sim.spawners.SpawnerCfg.func:1::1 msgid "Whether to copy the asset from the source prim or inherit it." msgstr "" @@ -644,67 +557,25 @@ msgstr "" #: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.mass_props:1 #: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1 #: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 #: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.mass_props:1 #: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.shapes.ConeCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 #: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 #: omni.isaac.lab.sim.spawners.shapes.SphereCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 #: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.mass_props:1 #: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.mass_props:1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 msgid "Mass properties." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 -msgid ":py:obj:`func `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 msgid "" @@ -715,38 +586,22 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 #: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 #: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.rigid_props:1 #: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.rigid_props:1 #: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.shapes.ConeCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.rigid_props:1 #: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.SphereCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 #: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.rigid_props:1 #: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.rigid_props:1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 msgid "Rigid body properties." msgstr "" @@ -760,38 +615,22 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.collision_props:1 #: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 #: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.collision_props:1 #: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.shapes.ConeCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 #: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 #: omni.isaac.lab.sim.spawners.shapes.SphereCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 #: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.collision_props:1 #: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.collision_props:1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 msgid "Properties to apply to all collision meshes." msgstr "" @@ -804,22 +643,6 @@ msgstr "" #: of #: omni.isaac.lab.sim.spawners.RigidObjectSpawnerCfg.mass_props:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 msgid "Activate contact reporting on all rigid bodies." msgstr "" @@ -906,34 +729,6 @@ msgid "" "rest and collision offsets are specified in the :attr:`deformable_props`." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1::1 -msgid "" -":py:obj:`func " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1::1 msgid "" @@ -951,26 +746,16 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.deformable_props:1 #: omni.isaac.lab.sim.spawners.DeformableObjectSpawnerCfg.func:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 #: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.deformable_props:1 #: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.deformable_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.deformable_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCfg.deformable_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.deformable_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.deformable_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.deformable_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.deformable_props:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 #: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.deformable_props:1 #: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.deformable_props:1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 msgid "Deformable body properties." msgstr "" @@ -1061,21 +846,8 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 msgid "Path to the visual material to use for the prim." msgstr "" @@ -1087,29 +859,19 @@ msgid "" msgstr "" #: ../../docstring of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visual_material:1 #: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material:1 #: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visual_material:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.visual_material:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.visual_material:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.visual_material:1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visual_material:1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visual_material:1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 #: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.visual_material:1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.visual_material:1 #: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material:1 #: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.SphereCfg.visual_material:1 msgid "Visual material properties." msgstr "" @@ -1122,18 +884,8 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 msgid "Path to the physics material to use for the prim." msgstr "" @@ -1147,79 +899,22 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.sim.spawners.from_files.GroundPlaneCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.physics_material:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCfg.physics_material:1 #: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.physics_material:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.physics_material:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.physics_material:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.physics_material:1 -#: omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.physics_material:1 -#: omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.shapes.ConeCfg.physics_material:1 -#: omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.physics_material:1 -#: omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 #: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.physics_material:1 -#: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 #: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.physics_material:1 #: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 #: omni.isaac.lab.sim.spawners.shapes.SphereCfg.physics_material:1 -#: omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 msgid "Physics material properties." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -msgid ":py:obj:`visible `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.shapes.ShapeCfg.visual_material_path:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.visual_material_path:1 #: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.visual_material_path:1 @@ -1557,72 +1252,6 @@ msgstr "" msgid "See :meth:`spawn_capsule` for more information." msgstr "" -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`physics_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 -msgid "" -":py:obj:`physics_material " -"`\\" -msgstr "" - #: of omni.isaac.lab.sim.spawners.shapes.CapsuleCfg.visible:1::1 msgid ":py:obj:`radius `\\" msgstr "" @@ -1677,70 +1306,6 @@ msgstr "" msgid "See :meth:`spawn_cone` for more information." msgstr "" -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid ":py:obj:`visible `\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid "" -":py:obj:`physics_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 -msgid "" -":py:obj:`physics_material " -"`\\" -msgstr "" - #: of omni.isaac.lab.sim.spawners.shapes.ConeCfg.visible:1::1 msgid ":py:obj:`radius `\\" msgstr "" @@ -1806,70 +1371,6 @@ msgstr "" msgid "Size of the cuboid." msgstr "" -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid ":py:obj:`visible `\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid "" -":py:obj:`physics_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CuboidCfg.size:1::1 -msgid "" -":py:obj:`physics_material " -"`\\" -msgstr "" - #: of omni.isaac.lab.sim.spawners.shapes.shapes.spawn_cylinder:1 msgid "Create a USDGeom-based cylinder prim with the given attributes." msgstr "" @@ -1920,72 +1421,6 @@ msgstr "" msgid "Axis of the cylinder." msgstr "" -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`physics_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.CylinderCfg.radius:1::1 -msgid "" -":py:obj:`physics_material " -"`\\" -msgstr "" - #: ../../docstring of omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.axis:1 #: omni.isaac.lab.sim.spawners.shapes.CylinderCfg.axis:1 msgid "Axis of the cylinder. Defaults to \"Z\"." @@ -2016,83 +1451,19 @@ msgstr "" msgid "Radius of the sphere (in m)." msgstr "" -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -msgid ":py:obj:`visible `\\" +#: ../../source/api/lab/omni.isaac.lab.sim.spawners.rst:99 +msgid "Meshes" msgstr "" -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 +#: of omni.isaac.lab.sim.spawners.meshes:3 msgid "" -":py:obj:`semantic_tags " -"`\\" +"NVIDIA Omniverse deals with meshes as `USDGeomMesh`_ prims. This sub-" +"module provides various configurations to spawn different types of " +"meshes. Based on the configuration, the spawned prim can be:" msgstr "" -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -msgid "" -":py:obj:`physics_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.shapes.SphereCfg.radius:1::1 -msgid "" -":py:obj:`physics_material " -"`\\" -msgstr "" - -#: ../../source/api/lab/omni.isaac.lab.sim.spawners.rst:99 -msgid "Meshes" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes:3 -msgid "" -"NVIDIA Omniverse deals with meshes as `USDGeomMesh`_ prims. This sub-" -"module provides various configurations to spawn different types of " -"meshes. Based on the configuration, the spawned prim can be:" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes:7 -msgid "a static collider (no rigid or deformable body)" +#: of omni.isaac.lab.sim.spawners.meshes:7 +msgid "a static collider (no rigid or deformable body)" msgstr "" #: of omni.isaac.lab.sim.spawners.meshes:8 @@ -2238,60 +1609,6 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -msgid ":py:obj:`visible `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -msgid "" -":py:obj:`deformable_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCfg.visual_material_path:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - #: of omni.isaac.lab.sim.spawners.meshes.meshes.spawn_mesh_capsule:1 msgid "Create a USD-Mesh capsule prim with the given attributes." msgstr "" @@ -2304,90 +1621,6 @@ msgstr "" msgid "Bases: :py:class:`~omni.isaac.lab.sim.spawners.meshes.meshes_cfg.MeshCfg`" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`deformable_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`physics_material_path " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 -msgid "" -":py:obj:`physics_material " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sim.spawners.meshes.MeshCapsuleCfg.visible:1::1 msgid "" @@ -2411,78 +1644,6 @@ msgstr "" msgid "Create a USD-Mesh cone prim with the given attributes." msgstr "" -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`deformable_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`physics_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 -msgid "" -":py:obj:`physics_material " -"`\\" -msgstr "" - #: of omni.isaac.lab.sim.spawners.meshes.MeshConeCfg.visible:1::1 msgid ":py:obj:`radius `\\" msgstr "" @@ -2512,78 +1673,6 @@ msgstr "" msgid "Size of the cuboid (in m)." msgstr "" -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`deformable_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`physics_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshCuboidCfg.size:1::1 -msgid "" -":py:obj:`physics_material " -"`\\" -msgstr "" - #: of omni.isaac.lab.sim.spawners.meshes.meshes.spawn_mesh_cylinder:1 msgid "Create a USD-Mesh cylinder prim with the given attributes." msgstr "" @@ -2606,175 +1695,19 @@ msgstr "" #: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 msgid ":py:obj:`axis `\\" msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`deformable_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`physics_material_path " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.meshes.MeshCylinderCfg.radius:1::1 -msgid "" -":py:obj:`physics_material " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.meshes.spawn_mesh_sphere:1 -msgid "Create a USD-Mesh sphere prim with the given attributes." -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.meshes_cfg.MeshSphereCfg:3 -msgid "See :meth:`spawn_mesh_sphere` for more information." -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`radius " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`deformable_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" + +#: of omni.isaac.lab.sim.spawners.meshes.meshes.spawn_mesh_sphere:1 +msgid "Create a USD-Mesh sphere prim with the given attributes." msgstr "" -#: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 -msgid "" -":py:obj:`physics_material_path " -"`\\" +#: of omni.isaac.lab.sim.spawners.meshes.meshes_cfg.MeshSphereCfg:3 +msgid "See :meth:`spawn_mesh_sphere` for more information." msgstr "" #: of omni.isaac.lab.sim.spawners.meshes.MeshSphereCfg.radius:1::1 msgid "" -":py:obj:`physics_material " -"`\\" +":py:obj:`radius " +"`\\" msgstr "" #: ../../source/api/lab/omni.isaac.lab.sim.spawners.rst:154 @@ -2907,17 +1840,12 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.prim_type:1 -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 #: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1 -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 #: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1 -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 #: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1 -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 #: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1 #: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 #: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.prim_type:1 -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 msgid "The prim type name for the light prim." msgstr "" @@ -2925,13 +1853,7 @@ msgstr "" msgid ":py:obj:`color `\\" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 +#: of omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 msgid "The color of emitted light, in energy-linear terms." msgstr "" @@ -2941,13 +1863,7 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 +#: of omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 msgid "Enables color temperature." msgstr "" @@ -2957,13 +1873,7 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 +#: of omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 msgid "Color temperature (in Kelvin) representing the white point." msgstr "" @@ -2973,13 +1883,7 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 +#: of omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 msgid "Normalizes power by the surface area of the light." msgstr "" @@ -2989,13 +1893,7 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 +#: of omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 msgid "Scales the power of the light exponentially as a power of 2." msgstr "" @@ -3005,30 +1903,8 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "Scales the power of the light linearly." -msgstr "" - -#: of omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -msgid ":py:obj:`visible `\\" -msgstr "" - -#: of omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - #: of omni.isaac.lab.sim.spawners.lights.LightCfg.prim_type:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" +msgid "Scales the power of the light linearly." msgstr "" #: ../../docstring of @@ -3150,76 +2026,6 @@ msgid "" "`_." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -msgid "" -":py:obj:`color " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -msgid "" -":py:obj:`enable_color_temperature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -msgid "" -":py:obj:`color_temperature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -msgid "" -":py:obj:`normalize " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -msgid "" -":py:obj:`exposure " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -msgid "" -":py:obj:`intensity " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 -msgid "" -":py:obj:`prim_type " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.visible:1::1 msgid "" @@ -3265,190 +2071,52 @@ msgstr "" #: omni.isaac.lab.sim.spawners.lights.CylinderLightCfg.treat_as_line:1 msgid "" "Treats the cylinder as a line source, i.e. a zero-radius cylinder. " -"Defaults to false." -msgstr "" - -#: of omni.isaac.lab.sim.spawners.lights.lights_cfg.DiskLightCfg:3 -msgid "" -"A disk light is a light source that emits light from a disk. It is useful" -" for simulating fluorescent lights. For more information, please refer to" -" the documentation on `USDLux DiskLight " -"`_." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "" -":py:obj:`prim_type " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "" -":py:obj:`radius " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "Radius of the disk (in m)." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid ":py:obj:`color `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "" -":py:obj:`enable_color_temperature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "" -":py:obj:`color_temperature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "" -":py:obj:`normalize " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "" -":py:obj:`exposure " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 -msgid "" -":py:obj:`intensity " -"`\\" -msgstr "" - -#: ../../docstring of omni.isaac.lab.sim.spawners.lights.DiskLightCfg.radius:1 -msgid "Radius of the disk (in m). Defaults to 0.5m." -msgstr "" - -#: of omni.isaac.lab.sim.spawners.lights.lights_cfg.DistantLightCfg:3 -msgid "" -"A distant light is a light source that is infinitely far away, and emits " -"parallel rays of light. It is useful for simulating sun/moon light. For " -"more information, please refer to the documentation on `USDLux " -"DistantLight " -"`_." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -msgid "" -":py:obj:`prim_type " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -msgid "" -":py:obj:`angle " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -msgid "Angular size of the light (in degrees)." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" +"Defaults to false." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 +#: of omni.isaac.lab.sim.spawners.lights.lights_cfg.DiskLightCfg:3 msgid "" -":py:obj:`copy_from_source " -"`\\" +"A disk light is a light source that emits light from a disk. It is useful" +" for simulating fluorescent lights. For more information, please refer to" +" the documentation on `USDLux DiskLight " +"`_." msgstr "" #: of -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 +#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 msgid "" -":py:obj:`color " -"`\\" +":py:obj:`radius " +"`\\" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -msgid "" -":py:obj:`enable_color_temperature " -"`\\" +#: omni.isaac.lab.sim.spawners.lights.DiskLightCfg.prim_type:1::1 +msgid "Radius of the disk (in m)." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -msgid "" -":py:obj:`color_temperature " -"`\\" +#: ../../docstring of omni.isaac.lab.sim.spawners.lights.DiskLightCfg.radius:1 +msgid "Radius of the disk (in m). Defaults to 0.5m." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 +#: of omni.isaac.lab.sim.spawners.lights.lights_cfg.DistantLightCfg:3 msgid "" -":py:obj:`normalize " -"`\\" +"A distant light is a light source that is infinitely far away, and emits " +"parallel rays of light. It is useful for simulating sun/moon light. For " +"more information, please refer to the documentation on `USDLux " +"DistantLight " +"`_." msgstr "" #: of #: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 msgid "" -":py:obj:`exposure " -"`\\" +":py:obj:`angle " +"`\\" msgstr "" #: of #: omni.isaac.lab.sim.spawners.lights.DistantLightCfg.prim_type:1::1 -msgid "" -":py:obj:`intensity " -"`\\" +msgid "Angular size of the light (in degrees)." msgstr "" #: ../../docstring of @@ -3472,13 +2140,6 @@ msgid "" "`_." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -msgid "" -":py:obj:`prim_type " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 msgid "" @@ -3493,67 +2154,6 @@ msgid "" "texture intended for IBL (image based lighting)." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -msgid ":py:obj:`color `\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -msgid "" -":py:obj:`enable_color_temperature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -msgid "" -":py:obj:`color_temperature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -msgid "" -":py:obj:`normalize " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -msgid "" -":py:obj:`exposure " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 -msgid "" -":py:obj:`intensity " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sim.spawners.lights.DomeLightCfg.prim_type:1::1 msgid "" @@ -3653,76 +2253,6 @@ msgid "" "`_." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "" -":py:obj:`color " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "" -":py:obj:`enable_color_temperature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "" -":py:obj:`color_temperature " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "" -":py:obj:`normalize " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "" -":py:obj:`exposure " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "" -":py:obj:`intensity " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 -msgid "" -":py:obj:`prim_type " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sim.spawners.lights.SphereLightCfg.visible:1::1 msgid "" @@ -3857,7 +2387,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 #: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 msgid "Near and far clipping distances (in m)." msgstr "" @@ -3870,7 +2399,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 #: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 msgid "Perspective focal length (in cm)." msgstr "" @@ -3883,7 +2411,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 #: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 msgid "Distance from the camera to the focus plane (in m)." msgstr "" @@ -3896,7 +2423,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 #: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 msgid "Lens aperture." msgstr "" @@ -3909,7 +2435,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 #: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 msgid "Horizontal aperture (in cm)." msgstr "" @@ -3922,7 +2447,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 #: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 msgid "Vertical aperture (in mm)." msgstr "" @@ -3935,7 +2459,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 #: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 msgid "Offsets Resolution/Film gate horizontally." msgstr "" @@ -3948,7 +2471,6 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 #: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 msgid "Offsets Resolution/Film gate vertically." msgstr "" @@ -3961,32 +2483,10 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 #: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 msgid "Locks the camera in the Omniverse viewport." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - #: of omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg:1 msgid "**Methods:**" msgstr "" @@ -4194,111 +2694,27 @@ msgid "Perspective focal length (in cm). Defaults to 24.0 cm." msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg.from_intrinsic_matrix:22 -msgid "Distance from the camera to the focus plane (in m). Defaults to 400.0 m." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg.from_intrinsic_matrix:27 -msgid "An instance of the :class:`PinholeCameraCfg` class." -msgstr "" - -#: of omni.isaac.lab.sim.spawners.sensors.sensors_cfg.FisheyeCameraCfg:3 -msgid "" -"For more information on the parameters, please refer to the `camera " -"documentation `__." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`projection_type " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`clipping_range " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`focal_length " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`focus_distance " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`f_stop " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`horizontal_aperture " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`vertical_aperture " -"`\\" +#: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg.from_intrinsic_matrix:22 +msgid "Distance from the camera to the focus plane (in m). Defaults to 400.0 m." msgstr "" #: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 -msgid "" -":py:obj:`horizontal_aperture_offset " -"`\\" +#: omni.isaac.lab.sim.spawners.sensors.sensors_cfg.PinholeCameraCfg.from_intrinsic_matrix:27 +msgid "An instance of the :class:`PinholeCameraCfg` class." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 +#: of omni.isaac.lab.sim.spawners.sensors.sensors_cfg.FisheyeCameraCfg:3 msgid "" -":py:obj:`vertical_aperture_offset " -"`\\" +"For more information on the parameters, please refer to the `camera " +"documentation `__." msgstr "" #: of #: omni.isaac.lab.sim.spawners.sensors.FisheyeCameraCfg.projection_type:1::1 msgid "" -":py:obj:`lock_camera " -"`\\" +":py:obj:`projection_type " +"`\\" msgstr "" #: of @@ -4666,334 +3082,11 @@ msgid "" "function with the specified properties." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`asset_path " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 msgid "The absolute path to the asset file to convert into USD." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`usd_dir " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "The output directory path to store the generated USD file." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`usd_file_name " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "The name of the generated usd file." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`force_usd_conversion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "Force the conversion of the asset file to usd." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`make_instanceable " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "Make the generated USD file instanceable." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`import_inertia_tensor " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "Import the inertia tensor from urdf." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`fix_base " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "Create a fix joint to the root/base link." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`merge_fixed_joints " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "Consolidate links that are connected by fixed joints." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`self_collision " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "Activate self-collisions between links of the articulation." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`default_drive_type " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "The drive type used for joints." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`override_joint_dynamics " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "Override the joint dynamics parsed from the URDF file." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`default_drive_stiffness " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "The default stiffness of the joint drive." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`default_drive_damping " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "The default damping of the joint drive." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`link_density " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "Default density used for links." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`convex_decompose_mesh " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "Decompose a convex mesh into smaller pieces for a closer fit." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`deformable_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "Scale of the asset." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`articulation_props " -"`\\" -msgstr "" - -#: ../../docstring of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.articulation_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.articulation_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.articulation_props:1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "Properties to apply to the articulation root." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`fixed_tendons_props " -"`\\" -msgstr "" - -#: ../../docstring of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.fixed_tendons_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.fixed_tendons_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.fixed_tendons_props:1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "Properties to apply to the fixed tendons (if any)." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`joint_drive_props " -"`\\" -msgstr "" - -#: ../../docstring of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.joint_drive_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.joint_drive_props:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.joint_drive_props:1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "Properties to apply to a joint." -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: ../../docstring of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.asset_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.visual_material:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.visual_material:1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visual_material:1 -msgid "" -"Visual material properties to override the visual material properties in " -"the URDF file." -msgstr "" - #: ../../docstring of #: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.usd_dir:1 msgid "" @@ -5143,26 +3236,56 @@ msgid "Default density used for links. Defaults to 0." msgstr "" #: ../../docstring of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.link_density:3 -msgid "" -"This setting is only effective if ``\"inertial\"`` properties are missing" -" in the URDF." +#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.link_density:3 +msgid "" +"This setting is only effective if ``\"inertial\"`` properties are missing" +" in the URDF." +msgstr "" + +#: ../../docstring of +#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.convex_decompose_mesh:1 +msgid "" +"Decompose a convex mesh into smaller pieces for a closer fit. Defaults to" +" False." +msgstr "" + +#: ../../docstring of +#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.scale:1 +#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.scale:1 +#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.scale:1 +msgid "" +"Scale of the asset. Defaults to None, in which case the scale is not " +"modified." +msgstr "" + +#: ../../docstring of +#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.articulation_props:1 +#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.articulation_props:1 +#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.articulation_props:1 +msgid "Properties to apply to the articulation root." +msgstr "" + +#: ../../docstring of +#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.fixed_tendons_props:1 +#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.fixed_tendons_props:1 +#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.fixed_tendons_props:1 +msgid "Properties to apply to the fixed tendons (if any)." msgstr "" #: ../../docstring of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.convex_decompose_mesh:1 -msgid "" -"Decompose a convex mesh into smaller pieces for a closer fit. Defaults to" -" False." +#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.joint_drive_props:1 +#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.joint_drive_props:1 +#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.joint_drive_props:1 +msgid "Properties to apply to a joint." msgstr "" #: ../../docstring of -#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.scale:1 -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.scale:1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.scale:1 +#: omni.isaac.lab.sim.spawners.from_files.UrdfFileCfg.visual_material:1 +#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.visual_material:1 +#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visual_material:1 msgid "" -"Scale of the asset. Defaults to None, in which case the scale is not " -"modified." +"Visual material properties to override the visual material properties in " +"the URDF file." msgstr "" #: of omni.isaac.lab.sim.spawners.from_files.from_files.spawn_from_usd:1 @@ -5257,108 +3380,9 @@ msgstr "" #: of #: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 msgid "Variants to select from in the input USD file." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`deformable_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`articulation_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`fixed_tendons_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`joint_drive_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.usd_path:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.sim.spawners.from_files.UsdFileCfg.variants:1 #: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.variants:1 @@ -5409,27 +3433,6 @@ msgid "" " by default." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.from_files.GroundPlaneCfg.visible:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.GroundPlaneCfg.visible:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.from_files.GroundPlaneCfg.visible:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sim.spawners.from_files.GroundPlaneCfg.visible:1::1 msgid "" @@ -6512,62 +4515,6 @@ msgstr "" msgid "Whether to randomly select an asset configuration." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -msgid "" -":py:obj:`deformable_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.assets_cfg:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.sim.spawners.wrappers.MultiAssetSpawnerCfg.random_choice:1 #: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.random_choice:1 @@ -6606,111 +4553,6 @@ msgid "" "hierarchy." msgstr "" -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`visible " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`semantic_tags " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`copy_from_source " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`mass_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`deformable_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`rigid_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`collision_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`activate_contact_sensors " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`articulation_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`fixed_tendons_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`joint_drive_props " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`visual_material_path " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`visual_material " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 -msgid "" -":py:obj:`variants " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.sim.spawners.wrappers.MultiUsdFileCfg.visible:1::1 msgid "" diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.terrains.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.terrains.po index ecbc762bf2..a7d7593017 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.terrains.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.terrains.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-10-30 16:09+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.terrains.rst:2 msgid "omni.isaac.lab.terrains" @@ -253,8 +253,6 @@ msgstr "" #: of #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg:1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg:1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg:1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg:1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg:1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg:1 @@ -269,9 +267,7 @@ msgstr "" #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshBoxTerrainCfg:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshGapTerrainCfg:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPitTerrainCfg:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPlaneTerrainCfg:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRailsTerrainCfg:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRandomGridTerrainCfg:1 @@ -1011,7 +1007,6 @@ msgid "" msgstr "" #: of omni.isaac.lab.terrains.TerrainGeneratorCfg.seed:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 msgid "The width of the border around the terrain (in m)." msgstr "" @@ -1063,15 +1058,7 @@ msgid "" msgstr "" #: of omni.isaac.lab.terrains.TerrainGeneratorCfg.seed:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfTerrainBaseCfg.border_width:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 msgid "The discretization of the terrain along the x and y axes (in m)." msgstr "" @@ -1082,15 +1069,7 @@ msgid "" msgstr "" #: of omni.isaac.lab.terrains.TerrainGeneratorCfg.seed:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfTerrainBaseCfg.border_width:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 msgid "The discretization of the terrain along the z axis (in m)." msgstr "" @@ -1101,15 +1080,7 @@ msgid "" msgstr "" #: of omni.isaac.lab.terrains.TerrainGeneratorCfg.seed:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfTerrainBaseCfg.border_width:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 msgid "The slope threshold above which surfaces are made vertical." msgstr "" @@ -1350,29 +1321,6 @@ msgid "" msgstr "" #: of omni.isaac.lab.terrains.SubTerrainBaseCfg.function:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfTerrainBaseCfg.border_width:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshBoxTerrainCfg.box_height_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshGapTerrainCfg.gap_width_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPitTerrainCfg.pit_depth_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPlaneTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRailsTerrainCfg.rail_thickness_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRandomGridTerrainCfg.grid_width:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshStarTerrainCfg.num_bars:1::1 msgid "Proportion of the terrain to generate." msgstr "" @@ -1381,29 +1329,6 @@ msgid ":py:obj:`size `\\" msgstr "" #: of omni.isaac.lab.terrains.SubTerrainBaseCfg.function:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfTerrainBaseCfg.border_width:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshBoxTerrainCfg.box_height_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshGapTerrainCfg.gap_width_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPitTerrainCfg.pit_depth_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPlaneTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRailsTerrainCfg.rail_thickness_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRandomGridTerrainCfg.grid_width:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshStarTerrainCfg.num_bars:1::1 msgid "The width (along x) and length (along y) of the terrain (in m)." msgstr "" @@ -1414,29 +1339,6 @@ msgid "" msgstr "" #: of omni.isaac.lab.terrains.SubTerrainBaseCfg.function:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfTerrainBaseCfg.border_width:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshBoxTerrainCfg.box_height_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshGapTerrainCfg.gap_width_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPitTerrainCfg.pit_depth_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPlaneTerrainCfg.proportion:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRailsTerrainCfg.rail_thickness_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRandomGridTerrainCfg.grid_width:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshStarTerrainCfg.num_bars:1::1 msgid "Dictionary of configurations for sampling flat patches on the sub-terrain." msgstr "" @@ -1699,15 +1601,7 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfTerrainBaseCfg.border_width:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 msgid "The width of the border/padding around the terrain (in m)." msgstr "" @@ -1732,27 +1626,6 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfTerrainBaseCfg.border_width:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfTerrainBaseCfg.border_width:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfTerrainBaseCfg.border_width:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.border_width:1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.border_width:1 @@ -1925,55 +1798,6 @@ msgstr "" msgid "The distance between two randomly sampled points on the terrain." msgstr "" -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -msgid "" -":py:obj:`border_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -msgid "" -":py:obj:`horizontal_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -msgid "" -":py:obj:`vertical_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1::1 -msgid "" -":py:obj:`slope_threshold " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfRandomUniformTerrainCfg.noise_range:1 msgid "The minimum and maximum height noise (i.e. along z) of the terrain (in m)." @@ -2031,7 +1855,6 @@ msgid "" msgstr "" #: ../../docstring of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.slope_range:1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 @@ -2047,15 +1870,12 @@ msgstr "" #: of #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshBoxTerrainCfg.box_height_range:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshGapTerrainCfg.gap_width_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPitTerrainCfg.pit_depth_range:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRailsTerrainCfg.rail_thickness_range:1::1 @@ -2071,60 +1891,10 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 msgid "Whether the pyramid is inverted." msgstr "" -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -msgid "" -":py:obj:`border_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -msgid "" -":py:obj:`horizontal_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -msgid "" -":py:obj:`vertical_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidSlopedTerrainCfg.slope_range:1::1 -msgid "" -":py:obj:`slope_threshold " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.platform_width:1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.platform_width:1 @@ -2180,76 +1950,6 @@ msgid "" "the other terrains." msgstr "" -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`inverted " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`border_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`horizontal_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`vertical_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`slope_threshold " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`slope_range " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidSlopedTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`platform_width " -"`\\" -msgstr "" - #: ../../source/api/lab/omni.isaac.lab.terrains.rst:81 msgid "Pyramid Stairs Terrain" msgstr "" @@ -2279,11 +1979,9 @@ msgid "" msgstr "" #: ../../docstring of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.step_height_range:1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.step_height_range:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.step_height_range:1 @@ -2298,11 +1996,9 @@ msgid "" msgstr "" #: ../../docstring of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.step_width:1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_width:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.step_width:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.step_width:1 @@ -2324,79 +2020,29 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 msgid "Whether the pyramid stairs is inverted." msgstr "" -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 +#: ../../docstring of +#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1 +#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.inverted:1 +msgid "Whether the pyramid stairs is inverted. Defaults to False." +msgstr "" + +#: ../../docstring of +#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:3 +#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.inverted:3 msgid "" -":py:obj:`proportion " -"`\\" +"If True, the terrain is inverted such that the platform is at the bottom " +"and the stairs are upwards." msgstr "" #: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 +#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg:1 msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -msgid "" -":py:obj:`border_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -msgid "" -":py:obj:`horizontal_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -msgid "" -":py:obj:`vertical_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.step_height_range:1::1 -msgid "" -":py:obj:`slope_threshold " -"`\\" -msgstr "" - -#: ../../docstring of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.inverted:1 -msgid "Whether the pyramid stairs is inverted. Defaults to False." -msgstr "" - -#: ../../docstring of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:3 -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg.inverted:3 -msgid "" -"If True, the terrain is inverted such that the platform is at the bottom " -"and the stairs are upwards." -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg:1 -msgid "" -"Bases: " -":py:class:`~omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg`" +"Bases: " +":py:class:`~omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfPyramidStairsTerrainCfg`" msgstr "" #: of @@ -2413,83 +2059,6 @@ msgid "" "the other terrains." msgstr "" -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`inverted " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`border_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`horizontal_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`vertical_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`slope_threshold " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`step_height_range " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`step_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfInvertedPyramidStairsTerrainCfg.inverted:1::1 -msgid "" -":py:obj:`platform_width " -"`\\" -msgstr "" - #: ../../source/api/lab/omni.isaac.lab.terrains.rst:96 msgid "Discrete Obstacles Terrain" msgstr "" @@ -2528,55 +2097,6 @@ msgstr "" msgid "The mode to use for the obstacle height." msgstr "" -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -msgid "" -":py:obj:`border_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -msgid "" -":py:obj:`horizontal_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -msgid "" -":py:obj:`vertical_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 -msgid "" -":py:obj:`slope_threshold " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfDiscreteObstaclesTerrainCfg.obstacle_height_mode:1::1 msgid "" @@ -2672,55 +2192,6 @@ msgstr "" msgid "Configuration for a wave height field terrain." msgstr "" -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`border_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`horizontal_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`vertical_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`slope_threshold " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfWaveTerrainCfg.proportion:1::1 msgid "" @@ -2772,55 +2243,6 @@ msgstr "" msgid "Configuration for a stepping stones height field terrain." msgstr "" -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`border_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`horizontal_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`vertical_scale " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`slope_threshold " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.terrains.height_field.hf_terrains_cfg.HfSteppingStonesTerrainCfg.proportion:1::1 msgid "" @@ -2931,27 +2353,6 @@ msgstr "" msgid "Configuration for a plane mesh terrain." msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPlaneTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPlaneTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPlaneTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - #: ../../source/api/lab/omni.isaac.lab.terrains.rst:142 msgid "Pyramid terrain" msgstr "" @@ -3007,33 +2408,11 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRandomGridTerrainCfg.grid_width:1::1 msgid "If True, the terrain will have holes in the steps." msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.border_width:3 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPyramidStairsTerrainCfg.border_width:3 @@ -3091,62 +2470,6 @@ msgid "" "steps are inverted." msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`border_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`step_height_range " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`step_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`platform_width " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshInvertedPyramidStairsTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`holes " -"`\\" -msgstr "" - #: ../../source/api/lab/omni.isaac.lab.terrains.rst:162 msgid "Random grid terrain" msgstr "" @@ -3225,27 +2548,6 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRandomGridTerrainCfg.grid_width:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRandomGridTerrainCfg.grid_width:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRandomGridTerrainCfg.grid_width:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRandomGridTerrainCfg.holes:3 msgid "" @@ -3312,27 +2614,6 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRailsTerrainCfg.rail_thickness_range:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRailsTerrainCfg.rail_thickness_range:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRailsTerrainCfg.rail_thickness_range:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - #: ../../source/api/lab/omni.isaac.lab.terrains.rst:182 msgid "Pit terrain" msgstr "" @@ -3386,27 +2667,6 @@ msgstr "" msgid "If True, the pit contains two levels of stairs." msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPitTerrainCfg.pit_depth_range:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPitTerrainCfg.pit_depth_range:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPitTerrainCfg.pit_depth_range:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshPitTerrainCfg.double_pit:1 msgid "If True, the pit contains two levels of stairs. Defaults to False." @@ -3464,27 +2724,6 @@ msgstr "" msgid "If True, the pit contains two levels of stairs/boxes." msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshBoxTerrainCfg.box_height_range:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshBoxTerrainCfg.box_height_range:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshBoxTerrainCfg.box_height_range:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshBoxTerrainCfg.double_box:1 msgid "If True, the pit contains two levels of stairs/boxes. Defaults to False." @@ -3528,27 +2767,6 @@ msgid "" "`\\" msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshGapTerrainCfg.gap_width_range:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshGapTerrainCfg.gap_width_range:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshGapTerrainCfg.gap_width_range:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - #: ../../source/api/lab/omni.isaac.lab.terrains.rst:212 msgid "Floating ring terrain" msgstr "" @@ -3594,48 +2812,27 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_height_range:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 -msgid "The minimum and maximum height of the ring (in m)." -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 -msgid "" -":py:obj:`ring_thickness " -"`\\" -msgstr "" - -#: ../../docstring of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_thickness:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 -msgid "The thickness (along z) of the ring (in m)." -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 -msgid "" -":py:obj:`platform_width " -"`\\" +msgid "The minimum and maximum height of the ring (in m)." msgstr "" #: of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 msgid "" -":py:obj:`proportion " -"`\\" +":py:obj:`ring_thickness " +"`\\" msgstr "" -#: of +#: ../../docstring of +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_thickness:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 -msgid "" -":py:obj:`size " -"`\\" +msgid "The thickness (along z) of the ring (in m)." msgstr "" #: of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshFloatingRingTerrainCfg.ring_width_range:1::1 msgid "" -":py:obj:`flat_patch_sampling " -"`\\" +":py:obj:`platform_width " +"`\\" msgstr "" #: ../../source/api/lab/omni.isaac.lab.terrains.rst:222 @@ -3708,35 +2905,11 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshStarTerrainCfg.num_bars:1::1 msgid "The width of the cylindrical platform at the center of the terrain." msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshStarTerrainCfg.num_bars:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshStarTerrainCfg.num_bars:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshStarTerrainCfg.num_bars:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshStarTerrainCfg.num_bars:1 msgid "The number of bars per-side the star. Must be greater than 2." @@ -3814,27 +2987,6 @@ msgstr "" msgid "Configuration of repeated objects." msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 -msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 msgid "" @@ -3844,13 +2996,10 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.object_type:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.object_type:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.object_type:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.object_type:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 msgid "The type of object to generate." msgstr "" @@ -3865,7 +3014,7 @@ msgstr "" #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.object_params_start:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.object_params_start:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.proportion:1::1 msgid "The object curriculum parameters at the start of the curriculum." msgstr "" @@ -3880,7 +3029,7 @@ msgstr "" #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.object_params_end:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.object_params_end:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.proportion:1::1 msgid "The object curriculum parameters at the end of the curriculum." msgstr "" @@ -3892,10 +3041,7 @@ msgid "" msgstr "" #: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg:1::1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 msgid "The maximum amount of noise to add to the height of the objects (in m)." msgstr "" @@ -3915,13 +3061,10 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.ObjectCfg.num_objects:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.ObjectCfg.num_objects:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.ObjectCfg.num_objects:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.ObjectCfg.num_objects:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg.num_objects:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg.num_objects:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.ObjectCfg.num_objects:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.ObjectCfg.num_objects:1::1 msgid "The number of objects to add to the terrain." msgstr "" @@ -3934,13 +3077,10 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.ObjectCfg.height:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.ObjectCfg.num_objects:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.ObjectCfg.height:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.ObjectCfg.num_objects:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg.height:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg.num_objects:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.ObjectCfg.height:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.ObjectCfg.num_objects:1::1 msgid "The height (along z) of the object (in m)." msgstr "" @@ -3983,72 +3123,30 @@ msgstr "" #: of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 -msgid "" -":py:obj:`max_height_noise " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 -msgid "" -":py:obj:`platform_width " -"`\\" +":py:obj:`ObjectCfg " +"`\\" msgstr "" #: of +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.ObjectCfg:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 -msgid "" -":py:obj:`object_type " -"`\\" +msgid "Configuration for a curriculum of repeated pyramids." msgstr "" #: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.proportion:1::1 msgid "" ":py:obj:`object_params_start " "`\\" msgstr "" #: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.proportion:1::1 msgid "" ":py:obj:`object_params_end " "`\\" msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`ObjectCfg " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.ObjectCfg:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.proportion:1::1 -msgid "Configuration for a curriculum of repeated pyramids." -msgstr "" - #: of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.ObjectCfg:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.ObjectCfg:1 @@ -4058,20 +3156,6 @@ msgid "" ":py:class:`~omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedObjectsTerrainCfg.ObjectCfg`" msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.ObjectCfg.num_objects:1::1 -msgid "" -":py:obj:`num_objects " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.ObjectCfg.num_objects:1::1 -msgid "" -":py:obj:`height " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedPyramidsTerrainCfg.ObjectCfg.num_objects:1::1 msgid "" @@ -4137,47 +3221,18 @@ msgstr "" #: of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 -msgid "" -":py:obj:`max_height_noise " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 -msgid "" -":py:obj:`platform_width " -"`\\" +":py:obj:`ObjectCfg " +"`\\" msgstr "" #: of +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.ObjectCfg:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 -msgid "" -":py:obj:`object_type " -"`\\" +msgid "Configuration for repeated boxes." msgstr "" #: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.proportion:1::1 msgid "" ":py:obj:`object_params_start " "`\\" @@ -4185,14 +3240,14 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.object_params_start:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.object_params_start:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.proportion:1::1 msgid "The box curriculum parameters at the start of the curriculum." msgstr "" #: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.proportion:1::1 msgid "" ":py:obj:`object_params_end " "`\\" @@ -4200,39 +3255,12 @@ msgstr "" #: ../../docstring of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.object_params_end:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.proportion:1::1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.object_params_end:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.proportion:1::1 msgid "The box curriculum parameters at the end of the curriculum." msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`ObjectCfg " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.ObjectCfg:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.proportion:1::1 -msgid "Configuration for repeated boxes." -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.ObjectCfg.num_objects:1::1 -msgid "" -":py:obj:`num_objects " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.ObjectCfg.num_objects:1::1 -msgid "" -":py:obj:`height " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedBoxesTerrainCfg.ObjectCfg.num_objects:1::1 msgid "" @@ -4268,86 +3296,30 @@ msgstr "" #: of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 msgid "" -":py:obj:`proportion " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 -msgid "" -":py:obj:`size " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 -msgid "" -":py:obj:`flat_patch_sampling " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 -msgid "" -":py:obj:`max_height_noise " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 -msgid "" -":py:obj:`platform_width " -"`\\" +":py:obj:`ObjectCfg " +"`\\" msgstr "" #: of +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.ObjectCfg:1 #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 -msgid "" -":py:obj:`object_type " -"`\\" +msgid "Configuration for repeated cylinder." msgstr "" #: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.proportion:1::1 msgid "" ":py:obj:`object_params_start " "`\\" msgstr "" #: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg:1::1 +#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.proportion:1::1 msgid "" ":py:obj:`object_params_end " "`\\" msgstr "" -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.proportion:1::1 -msgid "" -":py:obj:`ObjectCfg " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.ObjectCfg:1 -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.proportion:1::1 -msgid "Configuration for repeated cylinder." -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.ObjectCfg.num_objects:1::1 -msgid "" -":py:obj:`num_objects " -"`\\" -msgstr "" - -#: of -#: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.ObjectCfg.num_objects:1::1 -msgid "" -":py:obj:`height " -"`\\" -msgstr "" - #: of #: omni.isaac.lab.terrains.trimesh.mesh_terrains_cfg.MeshRepeatedCylindersTerrainCfg.ObjectCfg.num_objects:1::1 msgid "" diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.utils.po b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.utils.po index d9dfa08ae6..fe83256d73 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.utils.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/api/lab/omni.isaac.lab.utils.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 08:28+0000\n" +"POT-Creation-Date: 2024-11-06 14:26+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -15,7 +15,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/api/lab/omni.isaac.lab.utils.rst:2 msgid "omni.isaac.lab.utils" @@ -31,131 +31,140 @@ msgstr "" msgid "Submodules" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`io `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.io:1 msgid "Submodules for files IO operations." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`array `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.array:1 msgid "Sub-module containing utilities for working with different array backends." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`assets `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.assets:1 msgid "" "Sub-module that defines the host-server where assets and resources are " "stored." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`buffers `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.buffers:1 msgid "Sub-module containing different buffers." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`dict `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.dict:1 msgid "Sub-module for utilities for working with dictionaries." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`interpolation `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.interpolation:1 msgid "Submodule for different interpolation methods." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`math `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.math:1 msgid "Sub-module containing utilities for various math operations." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`modifiers `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.modifiers:1 msgid "Sub-module containing different modifiers implementations." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`noise `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.noise:1 msgid "Sub-module containing different noise models implementations." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`string `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.string:1 msgid "" "Sub-module containing utilities for transforming strings and regular " "expressions." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`timer `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.timer:1 msgid "" "Sub-module for a timer class that can be used for performance " "measurements." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 +msgid ":py:obj:`types `\\" +msgstr "" + +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of +#: omni.isaac.lab.utils.types:1 +msgid "Sub-module for different data types." +msgstr "" + +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 msgid ":py:obj:`warp `\\" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:22::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:23::1 of #: omni.isaac.lab.utils.warp:1 msgid "Sub-module containing operations based on warp." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:24 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:25 msgid "Functions" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:27::1 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:28::1 msgid "" ":py:obj:`configclass `\\ \\(cls\\, " "\\*\\*kwargs\\)" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:27::1 of +#: ../../source/api/lab/omni.isaac.lab.utils.rst:28::1 of #: omni.isaac.lab.utils.configclass.configclass:1 #: omni.isaac.lab.utils.configclass.configclass:1::1 msgid "" @@ -163,7 +172,7 @@ msgid "" "utilities." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:30 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:31 msgid "Configuration class" msgstr "" @@ -406,7 +415,7 @@ msgstr "" msgid "The wrapped class." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:37 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:38 msgid "IO operations" msgstr "" @@ -512,7 +521,7 @@ msgstr "" msgid "Whether to sort the keys in the output file. Defaults to False." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:45 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:46 msgid "Array operations" msgstr "" @@ -613,7 +622,7 @@ msgstr "" msgid "The converted array as torch tensor." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:52 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:53 msgid "Asset operations" msgstr "" @@ -773,7 +782,7 @@ msgstr "" msgid "The content of the file." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:59 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:60 msgid "Buffer operations" msgstr "" @@ -781,7 +790,7 @@ msgstr "" #: omni.isaac.lab.utils.modifiers:1 omni.isaac.lab.utils.noise:1 #: omni.isaac.lab.utils.noise.noise_cfg.NoiseModelCfg:1 #: omni.isaac.lab.utils.noise.noise_cfg.NoiseModelWithAdditiveBiasCfg:1 -#: omni.isaac.lab.utils.timer:1 +#: omni.isaac.lab.utils.timer:1 omni.isaac.lab.utils.types:1 msgid "**Classes:**" msgstr "" @@ -827,6 +836,7 @@ msgstr "" #: omni.isaac.lab.utils.noise.noise_cfg.NoiseCfg:1 #: omni.isaac.lab.utils.noise.noise_cfg.NoiseModelCfg:1 #: omni.isaac.lab.utils.noise.noise_model.NoiseModel:1 +#: omni.isaac.lab.utils.types.ArticulationActions:1 msgid "Bases: :py:class:`object`" msgstr "" @@ -857,6 +867,7 @@ msgstr "" #: omni.isaac.lab.utils.noise.noise_model.NoiseModel:1 #: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias:1 #: omni.isaac.lab.utils.timer.Timer:1 +#: omni.isaac.lab.utils.types.ArticulationActions:1 msgid "**Methods:**" msgstr "" @@ -910,6 +921,7 @@ msgstr "" #: omni.isaac.lab.utils.noise.noise_cfg.NoiseModelWithAdditiveBiasCfg:1 #: omni.isaac.lab.utils.noise.noise_cfg.UniformNoiseCfg:1 #: omni.isaac.lab.utils.timer.Timer:1 +#: omni.isaac.lab.utils.types.ArticulationActions:1 msgid "**Attributes:**" msgstr "" @@ -1286,7 +1298,7 @@ msgid "" "that the buffer has not been updated." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:68 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:69 msgid "Dictionary operations" msgstr "" @@ -1515,7 +1527,7 @@ msgid "" "objects." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:75 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:76 msgid "Interpolation operations" msgstr "" @@ -1628,7 +1640,7 @@ msgid "" "input tensor." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:84 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:85 msgid "Math operations" msgstr "" @@ -3043,7 +3055,7 @@ msgid "" "(https://github.com/facebookresearch/pytorch3d/blob/eaf0709d6af0025fe94d1ee7cec454bc3054826a/pytorch3d/renderer/cameras.py#L1635-L1685)" msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:92 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:93 msgid "Modifier operations" msgstr "" @@ -3166,9 +3178,7 @@ msgstr "" msgid ":py:obj:`params `\\" msgstr "" -#: of omni.isaac.lab.utils.modifiers.DigitalFilterCfg.A:1::1 -#: omni.isaac.lab.utils.modifiers.IntegratorCfg.params:1::1 -#: omni.isaac.lab.utils.modifiers.ModifierCfg.params:1::1 +#: of omni.isaac.lab.utils.modifiers.ModifierCfg.params:1::1 msgid "" "The parameters to be passed to the function or callable class as keyword " "arguments." @@ -3438,12 +3448,6 @@ msgstr "" msgid "The coefficients corresponding the the filter's response to past outputs." msgstr "" -#: of omni.isaac.lab.utils.modifiers.DigitalFilterCfg.A:1::1 -msgid "" -":py:obj:`params " -"`\\" -msgstr "" - #: of omni.isaac.lab.utils.modifiers.DigitalFilterCfg.A:1::1 msgid ":py:obj:`B `\\" msgstr "" @@ -3552,10 +3556,6 @@ msgstr "" msgid "For more information, please check the :class:`Integrator` class." msgstr "" -#: of omni.isaac.lab.utils.modifiers.IntegratorCfg.params:1::1 -msgid ":py:obj:`params `\\" -msgstr "" - #: of omni.isaac.lab.utils.modifiers.IntegratorCfg.params:1::1 msgid ":py:obj:`dt `\\" msgstr "" @@ -3603,7 +3603,7 @@ msgstr "" msgid "Scaled data. Shape is the same as data." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:103 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:104 msgid "Noise operations" msgstr "" @@ -3761,10 +3761,7 @@ msgstr "" msgid ":py:obj:`operation `\\" msgstr "" -#: of omni.isaac.lab.utils.noise.ConstantNoiseCfg.bias:1::1 -#: omni.isaac.lab.utils.noise.GaussianNoiseCfg.mean:1::1 -#: omni.isaac.lab.utils.noise.NoiseCfg.operation:1::1 -#: omni.isaac.lab.utils.noise.UniformNoiseCfg.n_min:1::1 +#: of omni.isaac.lab.utils.noise.NoiseCfg.operation:1::1 msgid "The operation to apply the noise on the data." msgstr "" @@ -3789,12 +3786,6 @@ msgstr "" msgid "The bias to add." msgstr "" -#: of omni.isaac.lab.utils.noise.ConstantNoiseCfg.bias:1::1 -msgid "" -":py:obj:`operation " -"`\\" -msgstr "" - #: ../../docstring of omni.isaac.lab.utils.noise.ConstantNoiseCfg.bias:1 msgid "The bias to add. Defaults to 0.0." msgstr "" @@ -3807,12 +3798,6 @@ msgstr "" msgid "The mean of the noise." msgstr "" -#: of omni.isaac.lab.utils.noise.GaussianNoiseCfg.mean:1::1 -msgid "" -":py:obj:`operation " -"`\\" -msgstr "" - #: of omni.isaac.lab.utils.noise.GaussianNoiseCfg.mean:1::1 msgid ":py:obj:`std `\\" msgstr "" @@ -3845,11 +3830,38 @@ msgstr "" #: ../../docstring of omni.isaac.lab.utils.noise.NoiseModelCfg.noise_cfg:1 #: omni.isaac.lab.utils.noise.NoiseModelWithAdditiveBiasCfg.noise_cfg:1 -#: omni.isaac.lab.utils.noise.noise_cfg.NoiseModelWithAdditiveBiasCfg:1::1 #: omni.isaac.lab.utils.noise.noise_model.NoiseModel:1::1 msgid "The noise configuration to use." msgstr "" +#: of omni.isaac.lab.utils.noise.noise_model.NoiseModel:1::1 +msgid "" +":py:obj:`apply " +"`\\ \\(data\\)" +msgstr "" + +#: of omni.isaac.lab.utils.noise.noise_model.NoiseModel.apply:1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModel.reset:1::1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModel:1::1 +msgid "Apply the noise to the data." +msgstr "" + +#: of omni.isaac.lab.utils.noise.noise_model.NoiseModel:1::1 +msgid "" +":py:obj:`reset " +"`\\ " +"\\(\\[env\\_ids\\]\\)" +msgstr "" + +#: of omni.isaac.lab.utils.noise.noise_model.NoiseModel.reset:1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModel.reset:1::1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModel:1::1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias.reset:1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias.reset:1::1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias:1::1 +msgid "Reset the noise model." +msgstr "" + #: of omni.isaac.lab.utils.noise.noise_cfg.NoiseModelWithAdditiveBiasCfg:1 msgid "Bases: :py:class:`~omni.isaac.lab.utils.noise.noise_cfg.NoiseModelCfg`" msgstr "" @@ -3857,35 +3869,50 @@ msgstr "" #: of #: omni.isaac.lab.utils.noise.noise_cfg.NoiseModelWithAdditiveBiasCfg:1::1 msgid "" -":py:obj:`noise_cfg " -"`\\" +":py:obj:`class_type " +"`\\" msgstr "" #: of #: omni.isaac.lab.utils.noise.noise_cfg.NoiseModelWithAdditiveBiasCfg:1::1 msgid "" +"alias of " +":py:class:`~omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias`" +msgstr "" + +#: of +#: omni.isaac.lab.utils.noise.NoiseModelWithAdditiveBiasCfg.noise_cfg:1::1 +msgid "" ":py:obj:`bias_noise_cfg " "`\\" msgstr "" #: ../../docstring of #: omni.isaac.lab.utils.noise.NoiseModelWithAdditiveBiasCfg.bias_noise_cfg:1 -#: omni.isaac.lab.utils.noise.noise_cfg.NoiseModelWithAdditiveBiasCfg:1::1 +#: omni.isaac.lab.utils.noise.NoiseModelWithAdditiveBiasCfg.noise_cfg:1::1 msgid "The noise configuration for the bias." msgstr "" #: of -#: omni.isaac.lab.utils.noise.NoiseModelWithAdditiveBiasCfg.noise_cfg:1::1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias:1::1 msgid "" -":py:obj:`class_type " -"`\\" +":py:obj:`apply " +"`\\" +" \\(data\\)" +msgstr "" + +#: of omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias.apply:1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias.reset:1::1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias:1::1 +msgid "Apply bias noise to the data." msgstr "" #: of -#: omni.isaac.lab.utils.noise.NoiseModelWithAdditiveBiasCfg.noise_cfg:1::1 +#: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias:1::1 msgid "" -"alias of " -":py:class:`~omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias`" +":py:obj:`reset " +"`\\" +" \\(\\[env\\_ids\\]\\)" msgstr "" #: ../../docstring of @@ -3911,12 +3938,6 @@ msgstr "" msgid "The maximum value of the noise." msgstr "" -#: of omni.isaac.lab.utils.noise.UniformNoiseCfg.n_min:1::1 -msgid "" -":py:obj:`operation " -"`\\" -msgstr "" - #: ../../docstring of omni.isaac.lab.utils.noise.UniformNoiseCfg.n_min:1 msgid "The minimum value of the noise. Defaults to -1.0." msgstr "" @@ -3931,22 +3952,10 @@ msgid "" "\\(\\[env\\_ids\\]\\)" msgstr "" -#: of omni.isaac.lab.utils.noise.noise_model.NoiseModel.reset:1 -#: omni.isaac.lab.utils.noise.noise_model.NoiseModel.reset:1::1 -#: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias.reset:1 -#: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias.reset:1::1 -msgid "Reset the noise model." -msgstr "" - #: of omni.isaac.lab.utils.noise.noise_model.NoiseModel.reset:1::1 msgid ":py:obj:`apply `\\ \\(data\\)" msgstr "" -#: of omni.isaac.lab.utils.noise.noise_model.NoiseModel.apply:1 -#: omni.isaac.lab.utils.noise.noise_model.NoiseModel.reset:1::1 -msgid "Apply the noise to the data." -msgstr "" - #: of omni.isaac.lab.utils.noise.noise_model.NoiseModel.reset:3 msgid "" "This method can be implemented by derived classes to reset the noise " @@ -3995,11 +4004,6 @@ msgid "" "\\(data\\)" msgstr "" -#: of omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias.apply:1 -#: omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias.reset:1::1 -msgid "Apply bias noise to the data." -msgstr "" - #: of omni.isaac.lab.utils.noise.noise_model.NoiseModelWithAdditiveBias.reset:3 msgid "This method resets the bias term for the specified environments." msgstr "" @@ -4028,7 +4032,7 @@ msgstr "" msgid "The configuration parameters for uniform noise." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:113 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:114 msgid "String operations" msgstr "" @@ -4296,7 +4300,7 @@ msgstr "" msgid "When not all regular expressions in the data keys are matched." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:120 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:121 msgid "Timer operations" msgstr "" @@ -4467,7 +4471,109 @@ msgstr "" msgid "A float containing the time logged if the name exists." msgstr "" -#: ../../source/api/lab/omni.isaac.lab.utils.rst:127 +#: ../../source/api/lab/omni.isaac.lab.utils.rst:128 +msgid "Type operations" +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:1::1 +msgid "" +":py:obj:`ArticulationActions " +"`\\" +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:1 +#: omni.isaac.lab.utils.types.ArticulationActions:1::1 +msgid "Data container to store articulation's joints actions." +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:3 +msgid "" +"This class is used to store the actions of the joints of an articulation." +" It is used to store the joint positions, velocities, efforts, and " +"indices." +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:6 +msgid "If the actions are not provided, the values are set to None." +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:1::1 +msgid "" +":py:obj:`joint_positions " +"`\\" +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:1::1 +msgid "The joint positions of the articulation." +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:1::1 +msgid "" +":py:obj:`joint_velocities " +"`\\" +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:1::1 +msgid "The joint velocities of the articulation." +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:1::1 +msgid "" +":py:obj:`joint_efforts " +"`\\" +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:1::1 +msgid "The joint efforts of the articulation." +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:1::1 +msgid "" +":py:obj:`joint_indices " +"`\\" +msgstr "" + +#: of omni.isaac.lab.utils.types.ArticulationActions:1::1 +msgid "The joint indices of the articulation." +msgstr "" + +#: of +#: omni.isaac.lab.utils.types.ArticulationActions.joint_positions:1::1 +msgid "" +":py:obj:`__init__ " +"`\\ " +"\\(\\[joint\\_positions\\, ...\\]\\)" +msgstr "" + +#: ../../docstring of +#: omni.isaac.lab.utils.types.ArticulationActions.joint_positions:1 +msgid "The joint positions of the articulation. Defaults to None." +msgstr "" + +#: ../../docstring of +#: omni.isaac.lab.utils.types.ArticulationActions.joint_velocities:1 +msgid "The joint velocities of the articulation. Defaults to None." +msgstr "" + +#: ../../docstring of +#: omni.isaac.lab.utils.types.ArticulationActions.joint_efforts:1 +msgid "The joint efforts of the articulation. Defaults to None." +msgstr "" + +#: ../../docstring of +#: omni.isaac.lab.utils.types.ArticulationActions.joint_indices:1 +msgid "The joint indices of the articulation. Defaults to None." +msgstr "" + +#: ../../docstring of +#: omni.isaac.lab.utils.types.ArticulationActions.joint_indices:3 +msgid "" +"If the joint indices are a slice, this indicates that the indices are " +"continuous and correspond to all the joints of the articulation. We use a" +" slice to make the indexing more efficient." +msgstr "" + +#: ../../source/api/lab/omni.isaac.lab.utils.rst:135 msgid "Warp operations" msgstr "" @@ -4606,27 +4712,3 @@ msgid "" " returned tensor contains :obj:`int(-1)` for missed hits." msgstr "" -#~ msgid "" -#~ ":py:obj:`apply " -#~ "`\\ " -#~ "\\(data\\)" -#~ msgstr "" - -#~ msgid "" -#~ ":py:obj:`reset " -#~ "`\\ " -#~ "\\(\\[env\\_ids\\]\\)" -#~ msgstr "" - -#~ msgid "" -#~ ":py:obj:`apply " -#~ "`\\" -#~ " \\(data\\)" -#~ msgstr "" - -#~ msgid "" -#~ ":py:obj:`reset " -#~ "`\\" -#~ " \\(\\[env\\_ids\\]\\)" -#~ msgstr "" - diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/overview/core-concepts/motion_generators.po b/docs/locale/zh_CN/LC_MESSAGES/source/overview/core-concepts/motion_generators.po deleted file mode 100644 index 6e1eb4c5c6..0000000000 --- a/docs/locale/zh_CN/LC_MESSAGES/source/overview/core-concepts/motion_generators.po +++ /dev/null @@ -1,402 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) 2022-2024, The Isaac Lab Project Developers. -# This file is distributed under the same license as the Isaac Lab package. -# FIRST AUTHOR , 2024. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: Isaac Lab 1.2.0\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-22 15:18+0800\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: Ziqi Fan \n" -"Language: zh_CN\n" -"Language-Team: zh_CN \n" -"Plural-Forms: nplurals=1; plural=0;\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=utf-8\n" -"Content-Transfer-Encoding: 8bit\n" -"Generated-By: Babel 2.15.0\n" - -#: ../../source/overview/core-concepts/motion_generators.rst:2 -msgid "Motion Generators" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:4 -msgid "" -"Robotic tasks are typically defined in task-space in terms of desired " -"end-effector trajectory, while control actions are executed in the joint-" -"space. This naturally leads to *joint-space* and *task-space* " -"(operational-space) control methods. However, successful execution of " -"interaction tasks using motion control often requires an accurate model " -"of both the robot manipulator as well as its environment. While a " -"sufficiently precise manipulator's model might be known, detailed " -"description of environment is hard to obtain " -":cite:p:`siciliano2009force`. Planning errors caused by this mismatch can" -" be overcome by introducing a *compliant* behavior during interaction." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:15 -msgid "" -"While compliance is achievable passively through robot's structure (such " -"as elastic actuators, soft robot arms), we are more interested in " -"controller designs that focus on active interaction control. These are " -"broadly categorized into:" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:20 -msgid "" -"**impedance control:** indirect control method where motion deviations " -"caused during interaction relates to contact force as a mass-spring-" -"damper system with adjustable parameters (stiffness and damping). A " -"specialized case of this is *stiffness* control where only the static " -"relationship between position error and contact force is considered." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:26 -msgid "" -"**hybrid force/motion control:** active control method which controls " -"motion and force along unconstrained and constrained task directions " -"respectively. Among the various schemes for hybrid motion control, the " -"provided implementation is based on inverse dynamics control in the " -"operational space :cite:p:`khatib1987osc`." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:33 -msgid "" -"To provide an even broader set of motion generators, we welcome " -"contributions from the community. If you are interested, please open an " -"issue to start a discussion!" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:38 -msgid "Joint-space controllers" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:41 -msgid "Torque control" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:43 -#: ../../source/overview/core-concepts/motion_generators.rst:59 -#: ../../source/overview/core-concepts/motion_generators.rst:82 -msgid "Action dimensions: ``\"n\"`` (number of joints)" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:45 -msgid "" -"In torque control mode, the input actions are directly set as feed-" -"forward joint torque commands, i.e. at every time-step," -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:48 -msgid "\\tau = \\tau_{des}" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:52 -msgid "" -"Thus, this control mode is achievable by setting the command type for the" -" actuator group, via the :class:`ActuatorControlCfg` class, to " -"``\"t_abs\"``." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:57 -msgid "Velocity control" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:61 -msgid "" -"In velocity control mode, a proportional control law is required to " -"reduce the error between the current and desired joint velocities. Based " -"on input actions, the joint torques commands are computed as:" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:64 -msgid "\\tau = k_d (\\dot{q}_{des} - \\dot{q})" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:68 -msgid "where :math:`k_d` are the gains parsed from configuration." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:70 -msgid "" -"This control mode is achievable by setting the command type for the " -"actuator group, via the :class:`ActuatorControlCfg` class, to " -"``\"v_abs\"`` or ``\"v_rel\"``." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:75 -msgid "" -"While performing velocity control, in many cases, gravity compensation is" -" required to ensure better tracking of the command. In this case, we " -"suggest disabling gravity for the links in the articulation in " -"simulation." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:80 -msgid "Position control with fixed impedance" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:84 -msgid "" -"In position control mode, a proportional-damping (PD) control law is " -"employed to track the desired joint positions and ensuring the " -"articulation remains still at the desired location (i.e., desired joint " -"velocities are zero). Based on the input actions, the joint torque " -"commands are computed as:" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:88 -msgid "\\tau = k_p (q_{des} - q) - k_d \\dot{q}" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:92 -msgid "where :math:`k_p` and :math:`k_d` are the gains parsed from configuration." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:94 -msgid "" -"In its simplest above form, the control mode is achievable by setting " -"the command type for the actuator group, via the " -":class:`ActuatorControlCfg` class, to ``\"p_abs\"`` or ``\"p_rel\"``." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:97 -msgid "" -"However, a more complete formulation which considers the dynamics of the " -"articulation would be:" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:99 -msgid "\\tau = M \\left( k_p (q_{des} - q) - k_d \\dot{q} \\right) + g" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:103 -msgid "" -"where :math:`M` is the joint-space inertia matrix of size :math:`n " -"\\times n`, and :math:`g` is the joint-space gravity vector. This " -"implementation is available through the :class:`JointImpedanceController`" -" class by setting the impedance mode to ``\"fixed\"``. The gains " -":math:`k_p` are parsed from the input configuration and :math:`k_d` are " -"computed while considering the system as a decoupled point-mass " -"oscillator, i.e.," -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:108 -msgid "k_d = 2 \\sqrt{k_p} \\times D" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:112 -msgid "" -"where :math:`D` is the damping ratio of the system. Critical damping is " -"achieved for :math:`D = 1`, overcritical damping for :math:`D > 1` and " -"undercritical damping for :math:`D < 1`." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:115 -msgid "" -"Additionally, it is possible to disable the inertial or gravity " -"compensation in the controller by setting the flags " -":attr:`inertial_compensation` and :attr:`gravity_compensation` in the " -"configuration to :obj:`False`, respectively." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:120 -msgid "Position control with variable stiffness" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:122 -msgid "Action dimensions: ``\"2n\"`` (number of joints)" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:124 -msgid "" -"In stiffness control, the same formulation as above is employed, however," -" the gains :math:`k_p` are part of the input commands. This " -"implementation is available through the :class:`JointImpedanceController`" -" class by setting the impedance mode to ``\"variable_kp\"``." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:129 -msgid "Position control with variable impedance" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:131 -msgid "Action dimensions: ``\"3n\"`` (number of joints)" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:133 -msgid "" -"In impedance control, the same formulation as above is employed, however," -" both :math:`k_p` and :math:`k_d` are part of the input commands. This " -"implementation is available through the :class:`JointImpedanceController`" -" class by setting the impedance mode to ``\"variable\"``." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:138 -msgid "Task-space controllers" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:141 -msgid "Differential inverse kinematics (IK)" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:143 -msgid "" -"Action dimensions: ``\"3\"`` (relative/absolute position), ``\"6\"`` " -"(relative pose), or ``\"7\"`` (absolute pose)" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:145 -msgid "" -"Inverse kinematics converts the task-space tracking error to joint-space " -"error. In its most typical implementation, the pose error in the task-" -"sace, :math:`\\Delta \\chi_e = (\\Delta p_e, \\Delta \\phi_e)`, is " -"computed as the cartesian distance between the desired and current task-" -"space positions, and the shortest distance in :math:`\\mathbb{SO}(3)` " -"between the desired and current task-space orientations." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:150 -msgid "" -"Using the geometric Jacobian :math:`J_{eO} \\in \\mathbb{R}^{6 \\times " -"n}`, that relates task-space velocity to joint-space velocities, we " -"design the control law to obtain the desired joint positions as:" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:153 -msgid "q_{des} = q + \\eta J_{eO}^{-} \\Delta \\chi_e" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:157 -msgid "" -"where :math:`\\eta` is a scaling parameter and :math:`J_{eO}^{-}` is the " -"pseudo-inverse of the Jacobian." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:159 -msgid "" -"It is possible to compute the pseudo-inverse of the Jacobian using " -"different formulations:" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:161 -msgid "Moore-Penrose pseduo-inverse: :math:`A^{-} = A^T(AA^T)^{-1}`." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:162 -msgid "" -"Levenberg-Marquardt pseduo-inverse (damped least-squares): :math:`A^{-} =" -" A^T (AA^T + \\lambda \\mathbb{I})^{-1}`." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:163 -msgid "Tanspose pseudo-inverse: :math:`A^{-} = A^T`." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:164 -msgid "" -"Adaptive singular-vale decomposition (SVD) pseduo-inverse from " -":cite:t:`buss2004ik`." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:166 -msgid "" -"These implementations are available through the " -":class:`DifferentialInverseKinematics` class." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:169 -msgid "Impedance controller" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:172 -msgid "" -"It uses task-space pose error and Jacobian to compute join torques " -"through mass-spring-damper system with a) fixed stiffness, b) variable " -"stiffness (stiffness control), and c) variable stiffness and damping " -"(impedance control)." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:177 -msgid "Operational-space controller" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:179 -msgid "" -"Similar to task-space impedance control but uses the Equation of Motion " -"(EoM) for computing the task-space force" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:184 -msgid "Closed-loop proportional force controller" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:186 -msgid "" -"It uses a proportional term to track the desired wrench command with " -"respect to current wrench at the end-effector." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:191 -msgid "Hybrid force-motion controller" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:193 -msgid "" -"It combines closed-loop force control and operational-space motion " -"control to compute the desired wrench at the end-effector. It uses " -"selection matrices that define the unconstrainted and constrained task " -"directions." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:200 -msgid "Reactive planners" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:202 -msgid "" -"Typical task-space controllers do not account for motion constraints such" -" as joint limits, self-collision and environment collision. Instead they " -"rely on high-level planners (such as RRT) to handle these non-Euclidean " -"constraints and give joint/task-space way-points to the controller. " -"However, these methods are often conservative and have undesirable " -"deceleration when close to an object. More recently, different approaches" -" combine the constraints directly into an optimization problem, thereby " -"providing a holistic solution for motion generation and control." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:212 -msgid "We currently support the following planners:" -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:214 -msgid "" -"**RMPFlow (lula):** An acceleration-based policy that composes various " -"Reimannian Motion Policies (RMPs) to solve a hierarchy of tasks " -":cite:p:`cheng2021rmpflow`. It is capable of performing dynamic collision" -" avoidance while navigating the end-effector to a target." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:218 -msgid "" -"**MPC (OCS2):** A receding horizon control policy based on sequential " -"linear-quadratic (SLQ) programming. It formulates various constraints " -"into a single optimization problem via soft-penalties and uses automatic " -"differentiation to compute derivatives of the system dynamics, " -"constraints and costs. Currently, we support the MPC formulation for end-" -"effector trajectory tracking in fixed-arm and mobile manipulators. The " -"formulation considers a kinematic system model with joint limits and " -"self-collision avoidance :cite:p:`mittal2021articulated`." -msgstr "" - -#: ../../source/overview/core-concepts/motion_generators.rst:227 -msgid "" -"We wrap around the python bindings for these reactive planners to perform" -" a batched computing of robot actions. However, their current " -"implementations are CPU-based which may cause certain slowdown for " -"learning." -msgstr "" - diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/overview/core-concepts/task_workflows.po b/docs/locale/zh_CN/LC_MESSAGES/source/overview/core-concepts/task_workflows.po index de9e0a182a..d4b889766b 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/overview/core-concepts/task_workflows.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/overview/core-concepts/task_workflows.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.1.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-09-21 01:38+0000\n" +"POT-Creation-Date: 2024-11-06 14:26+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language-Team: zh_CN \n" @@ -15,7 +15,7 @@ msgstr "" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0;\n" -"Generated-By: Babel 2.16.0\n" +"Generated-By: Babel 2.15.0\n" #: ../../source/overview/core-concepts/task_workflows.rst:5 msgid "Task Design Workflows" @@ -67,7 +67,7 @@ msgid "" "environment directly without the need for separate managers. This class is " "responsible for computing observations, applying actions, and computing " "rewards." -msgstr "**直接**: 用户定义一个单一类,该类直接实现整个环境,而无需单独的管理器。这个类负责计算观察、应用动作和计算奖励。" +msgstr "**直接式**: 用户定义一个单一类,该类直接实现整个环境,而无需单独的管理器。这个类负责计算观察、应用动作和计算奖励。" #: ../../source/overview/core-concepts/task_workflows.rst:29 msgid "" @@ -80,7 +80,7 @@ msgid "" "environment for performance or when implementing complex logic that is " "difficult to decompose into separate components." msgstr "" -"两个工作流程各有优缺点。基于管理器的工作流程更具模块化,允许环境的不同组件轻松更换。这在原型环境和实验不同配置时非常有用。另一方面,直接工作流程更高效,允许对环境逻辑进行更细粒度的控制。这在优化环境性能或实现复杂逻辑时非常有用,而这些复杂逻辑难以拆分为独立组件。" +"两个工作流程各有优缺点。基于管理器的工作流程更具模块化,允许环境的不同组件轻松更换。这在原型环境和实验不同配置时非常有用。另一方面,直接式工作流程更高效,允许对环境逻辑进行更细粒度的控制。这在优化环境性能或实现复杂逻辑时非常有用,而这些复杂逻辑难以拆分为独立组件。" #: ../../source/overview/core-concepts/task_workflows.rst:37 msgid "Manager-Based Environments" @@ -101,7 +101,11 @@ msgid "" msgstr "" "大多数环境实现遵循类似的结构。环境处理输入动作,经过仿真步骤,计算观察值和奖励信号,应用随机化,并重置终止的环境。基于此,环境可以被分解为处理每个任务的单独组件。例如,观察管理器负责计算观察值,奖励管理器负责计算奖励,终止管理器负责计算终止信号。这种方法在框架中被称为基于管理器的环境设计。" -#: ../../source/overview/core-concepts/task_workflows.rst:46 +#: ../../source/overview/core-concepts/task_workflows.rst:-1 +msgid "Manager-based Task Workflow" +msgstr "基于管理器的任务工作流" + +#: ../../source/overview/core-concepts/task_workflows.rst:56 msgid "" "Manager-based environments promote modular implementations of tasks by " "decomposing the task into individual components that are managed by separate" @@ -113,7 +117,7 @@ msgid "" msgstr "" "基于管理器的环境通过将任务分解为由独立类管理的各个组件,促进任务的模块化实现。任务的每个组件,例如奖励、观察、终止,都可以指定为独立的配置类,然后传递给相应的管理器类。管理器负责解析配置并处理其配置中指定的内容。" -#: ../../source/overview/core-concepts/task_workflows.rst:52 +#: ../../source/overview/core-concepts/task_workflows.rst:62 msgid "" "The coordination between the different managers is orchestrated by the class" " :class:`envs.ManagerBasedRLEnv`. It takes in a task configuration class " @@ -127,7 +131,7 @@ msgstr "" ":class:`envs.ManagerBasedRLEnvCfg` ),其中包含任务各个组件的配置。 根据配置,设置场景并初始化任务。 " "然后,通过环境进行步进时,依次调用所有管理器执行必要的操作。" -#: ../../source/overview/core-concepts/task_workflows.rst:58 +#: ../../source/overview/core-concepts/task_workflows.rst:68 msgid "" "For their own tasks, we expect the user to mainly define the task " "configuration class and use the existing :class:`envs.ManagerBasedRLEnv` " @@ -147,7 +151,7 @@ msgid "" "manager-style" msgstr "用于使用管理器样式定义Cartpole任务的奖励函数的示例" -#: ../../source/overview/core-concepts/task_workflows.rst:66 +#: ../../source/overview/core-concepts/task_workflows.rst:76 msgid "" "The following class is a part of the Cartpole environment configuration " "class. The :class:`RewardsCfg` class defines individual terms that compose " @@ -159,7 +163,7 @@ msgstr "" "以下类是 Cartpole 环境配置类的一部分。:class:`RewardsCfg` " "类定义了构成奖励函数的各个项。每个奖励项由其函数实现、权重和要传递给函数的附加参数定义。用户可以定义多个奖励项及其权重,以用于奖励函数。" -#: ../../source/overview/core-concepts/task_workflows.rst:76 +#: ../../source/overview/core-concepts/task_workflows.rst:86 msgid "" "Through this approach, it is possible to easily vary the implementations of " "the task by switching some components while leaving the remaining of the " @@ -171,18 +175,18 @@ msgid "" msgstr "" "通过这种方法,可以轻松地通过切换某些组件而保持其余代码不变来改变任务的实现。这种灵活性在原型设计环境和尝试不同配置时是非常可取的。它还允许与他人轻松合作实现一个环境,因为贡献者可以选择为他们自己的任务规范使用不同组合的配置。" -#: ../../source/overview/core-concepts/task_workflows.rst:84 +#: ../../source/overview/core-concepts/task_workflows.rst:94 msgid "" "We provide a more detailed tutorial for setting up an environment using the " "manager-based workflow at :ref:`tutorial-create-manager-rl-env`." msgstr "" "我们为使用基于管理器的工作流设置环境提供了更详细的教程,位于 :ref:`tutorial-create-manager-rl-env` 。" -#: ../../source/overview/core-concepts/task_workflows.rst:89 +#: ../../source/overview/core-concepts/task_workflows.rst:99 msgid "Direct Environments" -msgstr "直接的环境" +msgstr "直接式的环境" -#: ../../source/overview/core-concepts/task_workflows.rst:91 +#: ../../source/overview/core-concepts/task_workflows.rst:101 msgid "" "The direct-style environment aligns more closely with traditional " "implementations of environments, where a single script directly implements " @@ -193,11 +197,15 @@ msgid "" ":class:`envs.DirectMARLEnv`. For users migrating from the `IsaacGymEnvs`_ " "and `OmniIsaacGymEnvs`_ framework, this workflow may be more familiar." msgstr "" -"直接样式环境更符合传统环境实现,其中单个脚本直接实现奖励函数、观测函数、重置和环境的所有其他组件。这种方法不需要管理类。相反,用户可以通过基类 " +"直接式的环境更符合传统环境实现,其中单个脚本直接实现奖励函数、观测函数、重置和环境的所有其他组件。这种方法不需要管理类。相反,用户可以通过基类 " ":class:`envs.DirectRLEnv` 或 :class:`envs.DirectMARLEnv` 的API自由实现他们的任务。对于从 " "`IsaacGymEnvs`_ 和 `OmniIsaacGymEnvs`_ 框架迁移的用户,这种工作流程可能更为熟悉。" -#: ../../source/overview/core-concepts/task_workflows.rst:97 +#: ../../source/overview/core-concepts/task_workflows.rst:-1 +msgid "Direct-based Task Workflow" +msgstr "直接式的任务工作流" + +#: ../../source/overview/core-concepts/task_workflows.rst:117 msgid "" "When defining an environment with the direct-style implementation, we expect" " the user define a single class that implements the entire environment. The " @@ -208,30 +216,30 @@ msgid "" "for setting up the scene, processing the actions, computing the rewards, " "observations, resets, and termination signals." msgstr "" -"在使用直接样式实现定义环境时,我们期望用户定义一个实现整个环境的单个类。任务类应该继承自基类 :class:`envs.DirectRLEnv` 或 " +"在使用直接式实现定义环境时,我们期望用户定义一个实现整个环境的单个类。任务类应该继承自基类 :class:`envs.DirectRLEnv` 或 " ":class:`envs.DirectMARLEnv`,并且应该有其相应的配置类,该配置类分别继承自 " -":class:`envs.DirectRLEnvCfg` 或 " -":class:`envs.DirectMARLEnvCfg`。任务类负责设置场景、处理动作、计算奖励、观测、重置和终止信号。" +":class:`envs.DirectRLEnvCfg` 或 :class:`envs.DirectMARLEnvCfg` " +"。任务类负责设置场景、处理动作、计算奖励、观测、重置和终止信号。" #: ../../source/overview/core-concepts/task_workflows.rst msgid "" "Example for defining the reward function for the Cartpole task using the " "direct-style" -msgstr "为 Cartpole 任务定义奖励函数的示例,使用直接风格" +msgstr "为 Cartpole 任务定义奖励函数的示例,使用直接式风格" -#: ../../source/overview/core-concepts/task_workflows.rst:106 +#: ../../source/overview/core-concepts/task_workflows.rst:126 msgid "" "The following function is a part of the Cartpole environment class and is " "responsible for computing the rewards." msgstr "以下函数是Cartpole环境类的一部分,负责计算奖励。" -#: ../../source/overview/core-concepts/task_workflows.rst:113 +#: ../../source/overview/core-concepts/task_workflows.rst:133 msgid "" "It calls the :meth:`compute_rewards` function which is Torch JIT compiled " "for performance benefits." -msgstr "它调用了 `compute_rewards`_ 函数,该函数经过Torch JIT编译以获得性能优势。" +msgstr "它调用了 :meth:`compute_rewards` 函数,该函数经过Torch JIT编译以获得性能优势。" -#: ../../source/overview/core-concepts/task_workflows.rst:119 +#: ../../source/overview/core-concepts/task_workflows.rst:139 msgid "" "This approach provides more transparency in the implementations of the " "environments, as logic is defined within the task class instead of " @@ -243,12 +251,12 @@ msgid "" " This may be valuable when scaling up training tremendously which requires " "optimizing individual operations in the environment." msgstr "" -"这种方法提供了更高的透明度,因为逻辑在任务类中定义,而不是通过管理器进行抽象。当实现复杂的逻辑时,这可能是有益的,因为这些逻辑难以分解成独立的组件。此外,直接风格的实现可能会为环境带来更多的性能收益,因为它允许使用优化框架,如" +"这种方法提供了更高的透明度,因为逻辑在任务类中定义,而不是通过管理器进行抽象。当实现复杂的逻辑时,这可能是有益的,因为这些逻辑难以分解成独立的组件。此外,直接式风格的实现可能会为环境带来更多的性能收益,因为它允许使用优化框架,如" " `PyTorch JIT`_ 或 `Warp`_ 来实现大量逻辑。当需要大规模训练并优化环境中的单个操作时,这可能是有价值的。" -#: ../../source/overview/core-concepts/task_workflows.rst:128 +#: ../../source/overview/core-concepts/task_workflows.rst:148 msgid "" "We provide a more detailed tutorial for setting up a RL environment using " "the direct workflow at :ref:`tutorial-create-direct-rl-env`." msgstr "" -"我们为使用直接工作流程设置强化学习环境提供了更详细的教程,可参考 :ref:`tutorial-create-direct-rl-env`。" +"我们为使用直接式工作流程设置强化学习环境提供了更详细的教程,可参考 :ref:`tutorial-create-direct-rl-env` 。" diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/refs/changelog.po b/docs/locale/zh_CN/LC_MESSAGES/source/refs/changelog.po index 8c7a7296d2..449d823d53 100644 --- a/docs/locale/zh_CN/LC_MESSAGES/source/refs/changelog.po +++ b/docs/locale/zh_CN/LC_MESSAGES/source/refs/changelog.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: Isaac Lab 1.0.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2024-10-30 16:09+0800\n" +"POT-Creation-Date: 2024-11-06 14:26+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: Ziqi Fan \n" "Language: zh_CN\n" @@ -47,337 +47,511 @@ msgstr "" msgid "Extension containing the core framework of Isaac Lab." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3 -msgid "0.27.7 (2024-10-28)" +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2 +msgid "0.27.13 (2024-10-30)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:6 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:5 #: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:25 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:53 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:62 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:72 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:89 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:102 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:131 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:151 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:194 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:203 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:237 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:247 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:256 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:278 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:299 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:331 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:361 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:387 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:396 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:407 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:438 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:484 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:506 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:563 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:600 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:622 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:680 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:697 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:762 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:800 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:819 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:828 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:885 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:924 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:963 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:973 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1032 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1072 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1083 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1095 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1118 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1138 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1188 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1229 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1287 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1304 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1314 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1357 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1367 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1389 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1400 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1411 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1432 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1474 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1515 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1630 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1670 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1699 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1716 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1769 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1785 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1809 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1820 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1837 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1881 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1891 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1966 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2042 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2107 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2117 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2153 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2197 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2206 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2226 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2240 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2255 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2273 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2313 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2324 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2342 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2378 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2408 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2432 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2459 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2476 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2502 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2527 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2545 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2567 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2588 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2609 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2633 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2673 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2683 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2737 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2754 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2764 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2787 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2803 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2812 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2838 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2875 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2892 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2915 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2934 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2956 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2984 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3009 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3062 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3080 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:45 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:66 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:85 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:113 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:122 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:132 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:149 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:162 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:191 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:211 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:254 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:263 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:297 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:307 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:316 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:338 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:359 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:391 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:421 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:447 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:456 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:467 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:498 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:544 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:566 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:623 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:660 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:682 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:740 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:757 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:822 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:860 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:879 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:888 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:945 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:984 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1023 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1033 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1092 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1132 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1143 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1155 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1178 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1198 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1248 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1289 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1347 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1364 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1374 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1417 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1427 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1449 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1460 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1471 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1492 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1534 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1575 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1690 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1730 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1759 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1776 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1829 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1845 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1869 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1880 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1897 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1941 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1951 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2026 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2102 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2167 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2177 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2213 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2257 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2266 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2286 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2300 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2315 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2333 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2373 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2384 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2402 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2438 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2468 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2492 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2519 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2536 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2562 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2587 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2605 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2627 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2648 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2669 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2693 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2733 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2743 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2797 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2814 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2824 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2847 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2863 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2872 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2898 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2935 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2952 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2975 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2994 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3016 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3044 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3069 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3122 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3140 #: ../../../source/extensions/omni.isaac.lab_assets/docs/CHANGELOG.rst:5 #: ../../../source/extensions/omni.isaac.lab_assets/docs/CHANGELOG.rst:14 #: ../../../source/extensions/omni.isaac.lab_assets/docs/CHANGELOG.rst:23 #: ../../../source/extensions/omni.isaac.lab_assets/docs/CHANGELOG.rst:32 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:14 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:63 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:82 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:91 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:100 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:109 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:123 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:144 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:180 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:218 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:227 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:26 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:75 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:94 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:103 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:112 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:121 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:135 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:156 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:192 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:230 #: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:239 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:256 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:264 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:274 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:291 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:302 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:312 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:357 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:478 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:504 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:551 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:576 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:603 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:251 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:268 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:276 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:286 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:303 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:314 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:324 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:369 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:490 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:516 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:563 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:588 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:615 msgid "Added" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:8 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:7 msgid "" -"Added frozen encoder feature extraction observation space with ResNet and" -" Theia" +"Added the attributes " +":attr:`~omni.isaac.lab.sim.converters.MeshConverterCfg.translation`, " +":attr:`~omni.isaac.lab.sim.converters.MeshConverterCfg.rotation`, " +":attr:`~omni.isaac.lab.sim.converters.MeshConverterCfg.scale` to " +"translate, rotate, and scale meshes when importing them with " +":class:`~omni.isaac.lab.sim.converters.MeshConverter`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:12 -msgid "0.27.6 (2024-10-25)" +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:13 +msgid "0.27.12 (2024-01-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:15 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:34 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:43 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:121 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:141 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:163 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:173 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:224 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:289 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:309 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:320 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:338 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:419 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:465 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:516 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:529 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:552 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:588 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:632 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:651 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:662 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:674 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:690 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:736 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:752 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:778 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:789 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:810 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:862 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:879 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:898 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:942 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:981 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1039 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1049 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1061 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1112 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1128 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1143 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1154 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1165 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1199 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1236 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1263 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1276 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1294 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1322 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1346 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1422 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1444 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1453 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1463 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1484 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1493 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1504 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1525 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1535 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1545 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1554 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1575 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1588 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1599 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1609 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1619 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1637 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1648 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1660 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1676 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1688 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1735 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1745 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1791 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1849 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1858 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1869 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1901 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1913 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1926 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1935 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1951 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1978 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1990 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:16 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:513 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:628 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:699 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1267 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1278 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1306 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1396 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1438 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1784 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1887 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3081 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:182 +msgid "Removed" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:18 +msgid "Removed TensorDict usage in favor of Python dictionary in sensors" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:22 +msgid "0.27.11 (2024-10-31)" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:27 +msgid "" +"Added support to define tuple of floats to scale observation terms by " +"expanding the " +":attr:`omni.isaac.lab.managers.manager_term_cfg.ObservationManagerCfg.scale`" +" attribute." +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:32 +msgid "0.27.10 (2024-11-01)" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:35 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:169 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:243 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:274 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:328 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:412 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:426 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:438 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:507 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:539 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:553 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:601 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:672 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:764 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:775 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:785 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:802 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:827 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:897 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:907 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:932 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:968 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:993 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1013 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1071 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1081 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1162 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1389 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1769 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1822 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1838 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1863 #: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2001 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2011 #: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2021 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2053 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2065 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2094 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2143 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2159 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2171 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2183 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2245 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2261 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2281 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2291 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2301 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2349 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2360 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2371 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2387 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2422 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2438 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2466 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2535 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2599 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2618 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2667 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2716 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2726 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2744 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2798 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2818 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2857 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2092 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2137 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2148 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2191 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2275 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2391 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2457 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2507 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2550 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2571 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2617 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2638 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2683 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2704 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2715 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2751 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2769 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2834 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2885 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2906 #: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2925 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2940 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2951 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2965 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2975 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3000 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3016 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3030 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3039 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3053 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3071 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:22 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:41 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:189 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:318 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:328 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:337 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:346 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:369 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:379 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:390 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:413 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:442 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:468 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:484 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2942 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2966 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3050 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:5 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:16 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:43 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:63 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:85 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:126 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:145 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:161 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:172 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:212 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:221 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:260 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:295 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:409 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:420 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:435 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:446 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:463 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:473 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:506 #: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:525 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:535 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:543 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:558 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:585 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:594 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:578 +msgid "Changed" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:37 +msgid "" +"Cached the PhysX view's joint paths before looping over them when " +"processing fixed joint tendons inside the :class:`Articulation` class. " +"This helps improve the processing time for the tendons." +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:42 +msgid "0.27.9 (2024-11-01)" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:47 +msgid "" +"Added the :class:`omni.isaac.lab.utils.types.ArticulationActions` class " +"to store the joint actions for an articulation. Earlier, the class from " +"Isaac Sim was being used. However, it used a different type for the joint" +" actions which was not compatible with the Isaac Lab framework." +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:53 +msgid "0.27.8 (2024-11-01)" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:56 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:75 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:94 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:103 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:181 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:201 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:223 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:233 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:284 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:349 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:369 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:380 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:398 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:479 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:525 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:576 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:589 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:612 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:648 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:692 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:711 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:722 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:734 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:750 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:796 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:812 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:838 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:849 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:870 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:922 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:939 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:958 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1002 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1041 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1099 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1109 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1121 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1172 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1188 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1203 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1214 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1225 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1259 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1296 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1323 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1336 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1354 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1382 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1406 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1482 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1504 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1513 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1523 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1544 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1553 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1564 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1585 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1595 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1605 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1614 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1635 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1648 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1659 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1669 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1679 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1697 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1708 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1720 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1736 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1748 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1795 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1805 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1851 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1909 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1918 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1929 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1961 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1973 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1986 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1995 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2011 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2038 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2050 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2061 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2071 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2081 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2113 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2125 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2154 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2203 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2219 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2231 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2243 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2305 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2321 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2341 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2351 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2361 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2409 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2420 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2431 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2447 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2482 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2498 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2526 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2595 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2659 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2678 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2727 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2776 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2786 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2804 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2858 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2878 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2917 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2985 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3000 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3011 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3025 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3035 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3060 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3076 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3090 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3099 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3113 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3131 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:34 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:53 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:201 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:330 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:340 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:349 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:358 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:381 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:391 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:402 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:425 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:454 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:480 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:496 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:537 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:547 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:555 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:570 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:597 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:606 msgid "Fixed" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:17 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:58 +msgid "Added sanity check if the term is a valid type inside the command manager." +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:59 +msgid "" +"Corrected the iteration over ``group_cfg_items`` inside the observation " +"manager." +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:63 +msgid "0.27.7 (2024-10-28)" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:68 +msgid "" +"Added frozen encoder feature extraction observation space with ResNet and" +" Theia" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:72 +msgid "0.27.6 (2024-10-25)" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:77 msgid "" "Fixed usage of ``meshes`` property in " ":class:`omni.isaac.lab.sensors.RayCasterCamera` to use ``self.meshes`` " "instead of the undefined ``RayCaster.meshes``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:18 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:78 msgid "" "Fixed issue in :class:`omni.isaac.lab.envs.ui.BaseEnvWindow` where " "undefined configs were being accessed when creating debug visualization " "elements in UI." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:22 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:82 msgid "0.27.5 (2024-10-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:27 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:87 msgid "Added utilities for serializing/deserializing Gymnasium spaces." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:31 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:91 msgid "0.27.4 (2024-10-18)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:36 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:96 #, python-format msgid "" "Updated installation path instructions for Windows in the Isaac Lab " @@ -385,57 +559,57 @@ msgid "" "definitions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:40 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:100 msgid "0.27.3 (2024-10-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:45 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:105 msgid "" "Fixed the issue with using list or tuples of ``configclass`` within a " "``configclass``. Earlier, the list of configclass objects were not " "converted to dictionary properly when ``to_dict`` function was called." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:50 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:110 msgid "0.27.2 (2024-10-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:55 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:115 msgid "" "Added ``--kit_args`` to :class:`~omni.isaac.lab.app.AppLauncher` to allow" " passing command line arguments directly to Omniverse Kit SDK." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:59 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:119 msgid "0.27.1 (2024-10-20)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:64 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:124 msgid "" "Added :class:`~omni.isaac.lab.sim.RenderCfg` and the attribute " ":attr:`~omni.isaac.lab.sim.SimulationCfg.render` for specifying render " "related settings." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:69 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:129 msgid "0.27.0 (2024-10-14)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:74 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:134 msgid "" "Added a method to :class:`~omni.isaac.lab.utils.configclass` to check for" " attributes with values of type ``MISSING``. This is useful when the user" " wants to check if a certain attribute has been set or not." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:76 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:136 msgid "" "Added the configuration validation check inside the constructor of all " "the core classes (such as sensor base, asset base, scene and environment " "base classes)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:78 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:138 msgid "" "Added support for environments without commands by leaving the attribute " ":attr:`omni.isaac.lab.envs.ManagerBasedRLEnvCfg.commands` as None. " @@ -443,22 +617,18 @@ msgid "" ":class:`omni.isaac.lab.command_generators.NullCommandGenerator`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:83 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:141 msgid "" "Moved the ``meshes`` attribute in the " ":class:`omni.isaac.lab.sensors.RayCaster` class from class variable to " -"instance variable." +"instance variable. This prevents the meshes to overwrite each other." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:82 -msgid "This prevents the meshes to overwrite each other." -msgstr "" - -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:86 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:146 msgid "0.26.0 (2024-10-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:91 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:151 msgid "" "Added Imu sensor implementation that directly accesses the physx view " ":class:`omni.isaac.lab.sensors.Imu`. The sensor comes with a " @@ -466,7 +636,7 @@ msgid "" " :class:`omni.isaac.lab.sensors.ImuData`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:94 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:154 msgid "" "Moved and renamed " ":meth:`omni.isaac.lab.sensors.camera.utils.convert_orientation_convention`" @@ -474,112 +644,31 @@ msgid "" ":meth:`omni.isaac.lab.utils.math.convert_camera_frame_orientation_convention`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:95 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:155 msgid "" "Moved " ":meth:`omni.isaac.lab.sensors.camera.utils.create_rotation_matrix_from_view`" " to :meth:`omni.isaac.lab.utils.math.create_rotation_matrix_from_view`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:99 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:159 msgid "0.25.2 (2024-10-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:104 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:164 msgid "" "Added support for different Gymnasium spaces (``Box``, ``Discrete``, " "``MultiDiscrete``, ``Tuple`` and ``Dict``) to define observation, action " "and state spaces in the direct workflow." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:106 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:166 msgid "" "Added :meth:`sample_space` to environment utils to sample supported " "spaces where data containers are torch tensors." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:109 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:183 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:214 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:268 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:352 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:366 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:378 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:447 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:479 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:493 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:541 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:612 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:704 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:715 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:725 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:742 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:767 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:837 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:847 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:872 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:908 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:933 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:953 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1011 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1021 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1102 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1329 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1709 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1762 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1778 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1803 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1941 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1961 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2032 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2077 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2088 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2131 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2215 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2331 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2397 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2447 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2490 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2511 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2557 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2578 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2623 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2644 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2655 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2691 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2709 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2774 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2825 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2846 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2865 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2882 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2906 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2990 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:5 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:31 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:51 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:73 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:114 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:133 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:149 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:160 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:200 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:209 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:248 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:283 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:397 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:408 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:423 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:434 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:451 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:461 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:494 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:513 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:566 -msgid "Changed" -msgstr "" - -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:111 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:171 msgid "" "Mark the :attr:`num_observations`, :attr:`num_actions` and " ":attr:`num_states` in :class:`DirectRLEnvCfg` as deprecated in favor of " @@ -587,7 +676,7 @@ msgid "" "respectively." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:113 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:173 msgid "" "Mark the :attr:`num_observations`, :attr:`num_actions` and " ":attr:`num_states` in :class:`DirectMARLEnvCfg` as deprecated in favor of" @@ -595,32 +684,32 @@ msgid "" ":attr:`state_space` respectively." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:118 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:178 msgid "0.25.1 (2024-10-10)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:123 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:183 msgid "" "Fixed potential issue where default joint positions can fall outside of " "the limits being set with Articulation's ``write_joint_limits_to_sim`` " "API." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:128 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:188 msgid "0.25.0 (2024-10-06)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:133 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:193 msgid "" "Added configuration classes for spawning assets from a list of individual" " asset configurations randomly at the specified prim paths." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:138 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:198 msgid "0.24.20 (2024-10-07)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:143 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:203 msgid "" "Fixed the " ":meth:`omni.isaac.lab.envs.mdp.events.randomize_rigid_body_material` " @@ -628,77 +717,77 @@ msgid "" "ranges." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:148 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:208 msgid "0.24.19 (2024-10-05)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:153 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:213 msgid "" "Added new functionalities to the FrameTransformer to make it more " "general. It is now possible to track:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:155 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:215 msgid "Target frames that aren't children of the source frame prim_path" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:156 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:216 msgid "Target frames that are based upon the source frame prim_path" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:160 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:220 msgid "0.24.18 (2024-10-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:165 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:225 msgid "" "Fixes parsing and application of ``size`` parameter for " ":class:`~omni.isaac.lab.sim.spawn.GroundPlaneCfg` to correctly scale the " "grid-based ground plane." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:170 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:230 msgid "0.24.17 (2024-10-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:175 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:235 msgid "" "Fixed the deprecation notice for using ``pxr.Semantics``. The " "corresponding modules use ``Semantics`` module directly." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:180 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:240 msgid "0.24.16 (2024-10-03)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:185 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:245 msgid "" "Renamed the observation function :meth:`grab_images` to :meth:`image` to " "follow convention of noun-based naming." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:186 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:246 msgid "" "Renamed the function " ":meth:`convert_perspective_depth_to_orthogonal_depth` to a shorter name " ":meth:`omni.isaac.lab.utils.math.orthogonalize_perspective_depth`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:191 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:251 msgid "0.24.15 (2024-09-20)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:196 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:256 msgid "" "Added :meth:`grab_images` to be able to use images for an observation " "term in manager-based environments." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:200 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:260 msgid "0.24.14 (2024-09-20)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:205 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:265 msgid "" "Added the method :meth:`convert_perspective_depth_to_orthogonal_depth` to" " convert perspective depth images to orthogonal depth images. This is " @@ -706,11 +795,11 @@ msgid "" "it expects orthogonal depth images as inputs." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:211 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:271 msgid "0.24.13 (2024-09-08)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:216 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:276 msgid "" "Moved the configuration of visualization markers for the command terms to" " their respective configuration classes. This allows users to modify the " @@ -718,11 +807,11 @@ msgid "" "classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:221 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:281 msgid "0.24.12 (2024-09-18)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:226 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:286 msgid "" "Fixed outdated fetching of articulation data by using the method " "``update_articulations_kinematic`` in " @@ -734,32 +823,32 @@ msgid "" "ensure that the articulation displays correctly after a reset." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:234 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:294 msgid "0.24.11 (2024-09-11)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:239 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:299 msgid "" "Added skrl's JAX environment variables to " ":class:`~omni.isaac.lab.app.AppLauncher` to support distributed multi-GPU" " and multi-node training using JAX" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:244 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:304 msgid "0.24.10 (2024-09-10)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:249 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:309 msgid "" "Added config class, support, and tests for MJCF conversion via standalone" " python scripts." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:253 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:313 msgid "0.24.9 (2024-09-09)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:258 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:318 msgid "" "Added a seed parameter to the " ":attr:`omni.isaac.lab.envs.ManagerBasedEnvCfg` and " @@ -768,7 +857,7 @@ msgid "" "generator for the environment." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:260 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:320 msgid "" "Adapted the workflow scripts to set the seed for the environment using " "the seed specified in the learning agent's configuration file or the " @@ -776,22 +865,22 @@ msgid "" "reproducible across different runs." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:265 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:325 msgid "0.24.8 (2024-09-08)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:270 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:330 msgid "" "Modified:meth:`quat_rotate` and :meth:`quat_rotate_inverse` operations to" " use :meth:`torch.einsum` for faster processing of high dimensional input" " tensors." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:275 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:335 msgid "0.24.7 (2024-09-06)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:280 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:340 msgid "" "Added support for property attributes in the " ":meth:``omni.isaac.lab.utils.configclass`` method. Earlier, the " @@ -799,61 +888,61 @@ msgid "" "and made them instance variables instead." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:286 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:346 msgid "0.24.6 (2024-09-05)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:291 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:351 msgid "" "Adapted the ``A`` and ``D`` button bindings inside " ":meth:`omni.isaac.lab.device.Se3Keyboard` to make them now more-intuitive" " to control the y-axis motion based on the right-hand rule." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:296 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:356 msgid "0.24.5 (2024-08-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:301 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:361 msgid "" "Added alternative data type \"distance_to_camera\" in " ":class:`omni.isaac.lab.sensors.TiledCamera` class to be consistent with " "all other cameras (equal to type \"depth\")." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:306 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:366 msgid "0.24.4 (2024-09-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:311 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:371 msgid "" "Added missing SI units to the documentation of " ":class:`omni.isaac.lab.sensors.Camera` and " ":class:`omni.isaac.lab.sensors.RayCasterCamera`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:313 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:373 msgid "" "Added test to check " ":attr:`omni.isaac.lab.sensors.RayCasterCamera.set_intrinsic_matrices`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:317 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:377 msgid "0.24.3 (2024-08-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:322 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:382 msgid "" "Fixed the support for class-bounded methods when creating a configclass " "out of them. Earlier, these methods were being made as instance methods " "which required initialization of the class to call the class-methods." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:328 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:388 msgid "0.24.2 (2024-08-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:333 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:393 msgid "" "Added a class method to initialize camera configurations with an " "intrinsic matrix in the " @@ -862,14 +951,14 @@ msgid "" " classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:340 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:400 msgid "" "Fixed the ray direction in " ":func:`omni.isaac.lab.sensors.ray_caster.patterns.patterns.pinhole_camera_pattern`" " to point to the center of the pixel instead of the top-left corner." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:342 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:402 msgid "" "Fixed the clipping of the \"distance_to_image_plane\" depth image " "obtained using the " @@ -879,75 +968,75 @@ msgid "" "generated. This makes the behavior equal to the USD Camera." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:349 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:409 msgid "0.24.1 (2024-08-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:354 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:414 msgid "" "Disabled default viewport in certain headless scenarios for better " "performance." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:358 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:418 msgid "0.24.0 (2024-08-17)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:363 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:423 msgid "" "Added additional annotators for " ":class:`omni.isaac.lab.sensors.camera.TiledCamera` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:368 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:428 msgid "" "Updated :class:`omni.isaac.lab.sensors.TiledCamera` to latest RTX tiled " "rendering API." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:369 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:429 msgid "" "Single channel outputs for :class:`omni.isaac.lab.sensors.TiledCamera`, " ":class:`omni.isaac.lab.sensors.Camera` and " ":class:`omni.isaac.lab.sensors.RayCasterCamera` now has shape (H, W, 1)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:370 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:430 msgid "" "Data type for RGB output for :class:`omni.isaac.lab.sensors.TiledCamera` " "changed from ``torch.float`` to ``torch.uint8``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:371 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:431 msgid "" "Dimension of RGB output for :class:`omni.isaac.lab.sensors.Camera` " "changed from (H, W, 4) to (H, W, 3). Use type ``rgba`` to retrieve the " "previous dimension." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:375 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:435 msgid "0.23.1 (2024-08-17)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:380 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:440 msgid "Updated torch to version 2.4.0." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:384 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:444 msgid "0.23.0 (2024-08-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:389 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:449 msgid "" "Added direct workflow base class " ":class:`omni.isaac.lab.envs.DirectMARLEnv` for multi-agent environments." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:393 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:453 msgid "0.22.1 (2024-08-17)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:398 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:458 msgid "" "Added APIs to interact with the physics simulation of deformable objects." " This includes setting the material properties, setting kinematic " @@ -956,28 +1045,28 @@ msgid "" ":mod:`omni.isaac.lab.assets.DeformableObject` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:404 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:464 msgid "0.22.0 (2024-08-14)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:409 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:469 msgid "" "Added :mod:`~omni.isaac.lab.utils.modifiers` module to provide framework " "for configurable and custom observation data modifiers." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:411 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:471 msgid "" "Adapted the :class:`~omni.isaac.lab.managers.ObservationManager` class to" " support custom modifiers. These are applied to the observation data " "before applying any noise or scaling operations." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:416 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:476 msgid "0.21.2 (2024-08-13)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:421 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:481 msgid "" "Moved event mode-based checks in the " ":meth:`omni.isaac.lab.managers.EventManager.apply` method outside the " @@ -985,7 +1074,7 @@ msgid "" " and improves readability." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:423 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:483 msgid "" "Fixed the logic for global and per environment interval times when using " "the \"interval\" mode inside the event manager. Earlier, the internal " @@ -993,81 +1082,66 @@ msgid "" " inside the loop that iterates over the event terms." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:429 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:489 msgid "0.21.1 (2024-08-06)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:431 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:491 msgid "" "Added a flag to preserve joint ordering inside the " ":class:`omni.isaac.lab.envs.mdp.JointAction` action term." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:435 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:495 msgid "0.21.0 (2024-08-05)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:440 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:500 msgid "" "Added the command line argument ``--device`` in " ":class:`~omni.isaac.lab.app.AppLauncher`. Valid options are:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:442 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:502 msgid "``cpu``: Use CPU." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:443 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:503 msgid "``cuda``: Use GPU with device ID ``0``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:444 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:504 msgid "" "``cuda:N``: Use GPU, where N is the device ID. For example, ``cuda:0``. " "The default value is ``cuda:0``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:449 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:509 msgid "" "Simplified setting the device throughout the code by relying on " ":attr:`omni.isaac.lab.sim.SimulationCfg.device` to activate gpu/cpu " "pipelines." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:453 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:568 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:639 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1207 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1218 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1246 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1336 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1378 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1724 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1827 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3021 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:170 -msgid "Removed" -msgstr "" - -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:455 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:515 msgid "" "Removed the parameter " ":attr:`omni.isaac.lab.sim.SimulationCfg.use_gpu_pipeline`. This is now " "directly inferred from :attr:`omni.isaac.lab.sim.SimulationCfg.device`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:457 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:517 msgid "" "Removed the command line input argument ``--device_id`` in " ":class:`~omni.isaac.lab.app.AppLauncher`. The device id can now be set " "using the ``--device`` argument, for example with ``--device cuda:0``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:462 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:522 msgid "0.20.8 (2024-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:467 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:527 msgid "" "Fixed the handling of observation terms with different shapes in the " ":class:`~omni.isaac.lab.managers.ObservationManager` class. Earlier, the " @@ -1077,30 +1151,30 @@ msgid "" " as a dictionary of tensors." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:471 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:531 msgid "" "Improved the error message when the observation terms are not of the same" " shape in the :class:`~omni.isaac.lab.managers.ObservationManager` class " "and the terms are being concatenated." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:476 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:536 msgid "0.20.7 (2024-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:481 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:541 msgid "Performance improvements for material randomization in events." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:486 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:546 msgid "Added minimum randomization frequency for reset mode randomizations." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:490 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:550 msgid "0.20.6 (2024-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:495 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:555 msgid "" "Removed the hierarchy from :class:`~omni.isaac.lab.assets.RigidObject` " "class to :class:`~omni.isaac.lab.assets.Articulation` class. Previously, " @@ -1111,21 +1185,21 @@ msgid "" " code is improved." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:503 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:563 msgid "0.20.5 (2024-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:508 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:568 msgid "" "Added :attr:`omni.isaac.lab.terrain.TerrainGeneratorCfg.border_height` to" " set the height of the border around the terrain." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:513 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:573 msgid "0.20.4 (2024-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:518 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:578 msgid "" "Fixed the caching of terrains when using the " ":class:`omni.isaac.lab.terrains.TerrainGenerator` class. Earlier, the " @@ -1136,11 +1210,11 @@ msgid "" "difficulty levels are sampled in the same order between different runs." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:526 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:586 msgid "0.20.3 (2024-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:531 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:591 msgid "" "Fixed the setting of translation and orientation when spawning a mesh " "prim. Earlier, the translation and orientation was being applied both on " @@ -1149,11 +1223,11 @@ msgid "" "not the intended behavior." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:538 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:598 msgid "0.20.2 (2024-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:543 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:603 msgid "" "Modified the computation of body acceleration for rigid body data to use " "PhysX APIs instead of numerical finite-differencing. This removes the " @@ -1161,11 +1235,11 @@ msgid "" "data buffer." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:549 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:609 msgid "0.20.1 (2024-07-30)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:554 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:614 msgid "" "Fixed the :meth:`omni.isaac.lab.utils.math.wrap_to_pi` method to handle " "the wrapping of angles correctly. Earlier, the method was not wrapping " @@ -1173,21 +1247,21 @@ msgid "" "the range [-2*pi, 2*pi]." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:560 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:620 msgid "0.20.0 (2024-07-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:565 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:625 msgid "Support for the Isaac Sim 4.1.0 release." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:570 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:630 msgid "" "The ``mdp.add_body_mass`` method in the events. Please use the " ":meth:`omni.isaac.lab.envs.mdp.randomize_rigid_body_mass` method instead." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:572 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:632 msgid "" "The classes ``managers.RandomizationManager`` and " "``managers.RandomizationTermCfg`` are replaced with " @@ -1195,41 +1269,41 @@ msgid "" ":class:`omni.isaac.lab.managers.EventTermCfg` classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:574 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:634 msgid "" "The following properties in " ":class:`omni.isaac.lab.sensors.FrameTransformerData`:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:576 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:636 msgid "" "``target_rot_source`` --> " ":attr:`~omni.isaac.lab.sensors.FrameTransformerData.target_quat_w`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:577 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:637 msgid "" "``target_rot_w`` --> " ":attr:`~omni.isaac.lab.sensors.FrameTransformerData.target_quat_source`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:578 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:638 msgid "" "``source_rot_w`` --> " ":attr:`~omni.isaac.lab.sensors.FrameTransformerData.source_quat_w`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:580 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:640 msgid "" "The kit experience file ``isaaclab.backwards.compatible.kit``. This is " "followed by dropping the support for Isaac Sim 2023.1.1 completely." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:585 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:645 msgid "0.19.4 (2024-07-13)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:590 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:650 msgid "" "Added the call to \"startup\" events when using the " ":class:`~omni.isaac.lab.envs.ManagerBasedEnv` class. Earlier, the " @@ -1239,43 +1313,43 @@ msgid "" "\"startup\" events were called in the constructor." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:597 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:657 msgid "0.19.3 (2024-07-13)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:602 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:662 msgid "" "Added schemas for setting and modifying deformable body properties on a " "USD prim." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:603 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:663 msgid "Added API to spawn a deformable body material in the simulation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:604 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:664 msgid "" "Added APIs to spawn rigid and deformable meshes of primitive shapes " "(cone, cylinder, sphere, box, capsule) in the simulation. This is " "possible through the :mod:`omni.isaac.lab.sim.spawners.meshes` module." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:609 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:669 msgid "0.19.2 (2024-07-05)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:614 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:674 msgid "" "Modified cloning scheme based on the attribute " ":attr:`~omni.isaac.lab.scene.InteractiveSceneCfg.replicate_physics` to " "determine whether environment is homogeneous or heterogeneous." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:619 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:679 msgid "0.19.1 (2024-07-05)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:624 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:684 msgid "" "Added a lidar pattern function " ":func:`~omni.isaac.lab.sensors.ray_caster.patterns.patterns.lidar_pattern`" @@ -1283,11 +1357,11 @@ msgid "" ":class:`~omni.isaac.lab.sensors.ray_caster.patterns_cfg.LidarPatternCfg`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:629 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:689 msgid "0.19.0 (2024-07-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:634 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:694 msgid "" "Fixed parsing of articulations with nested rigid links while using the " ":class:`omni.isaac.lab.assets.Articulation` class. Earlier, the class " @@ -1295,7 +1369,7 @@ msgid "" "the rigid links were not being parsed correctly by the PhysX view." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:641 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:701 msgid "" "Removed the attribute :attr:`body_physx_view` from the " ":class:`omni.isaac.lab.assets.Articulation` and " @@ -1304,17 +1378,17 @@ msgid "" " following the same ordering." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:644 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:704 msgid "" "Dropped support for Isaac Sim 2023.1.1. The minimum supported version is " "now Isaac Sim 4.0.0." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:648 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:708 msgid "0.18.6 (2024-07-01)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:653 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:713 msgid "" "Fixed the environment stepping logic. Earlier, the environments' " "rendering logic was updating the kit app which would in turn step the " @@ -1322,11 +1396,11 @@ msgid "" "Now, a render call only does rendering and does not step the physics." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:659 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:719 msgid "0.18.5 (2024-06-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:664 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:724 msgid "" "Fixed the gravity vector direction used inside the " ":class:`omni.isaac.lab.assets.RigidObjectData` class. Earlier, the " @@ -1336,18 +1410,18 @@ msgid "" " projection of the gravity vector on the object." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:671 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:731 msgid "0.18.4 (2024-06-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:676 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:736 msgid "" "Fixed double reference count of the physics sim view inside the asset " "classes. This was causing issues when destroying the asset class instance" " since the physics sim view was not being properly released." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:682 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:742 msgid "" "Added the attribute " ":attr:`~omni.isaac.lab.assets.AssetBase.is_initialized` to check if the " @@ -1355,11 +1429,11 @@ msgid "" "ensure that the asset or sensor is ready to use in the simulation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:687 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:747 msgid "0.18.3 (2024-06-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:692 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:752 msgid "" "Fixed the docstrings at multiple places related to the different buffer " "implementations inside the :mod:`omni.isaac.lab.utils.buffers` module. " @@ -1367,7 +1441,7 @@ msgid "" "about the classes and their methods." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:699 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:759 msgid "" "Added the field for fixed tendom names in the " ":class:`omni.isaac.lab.assets.ArticulationData` class. Earlier, this " @@ -1375,7 +1449,7 @@ msgid "" "related information such as joint or body names." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:706 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:766 msgid "" "Renamed the fields ``min_num_time_lags`` and ``max_num_time_lags`` to " "``min_delay`` and ``max_delay`` in the " @@ -1383,22 +1457,22 @@ msgid "" "make the naming simpler to understand." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:712 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:772 msgid "0.18.2 (2024-06-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:717 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:777 msgid "" "Moved the configuration for tile-rendered camera into its own file named " "``tiled_camera_cfg.py``. This makes it easier to follow where the " "configuration is located and how it is related to the class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:722 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:782 msgid "0.18.1 (2024-06-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:727 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:787 msgid "" "Ensured that a parity between class and its configuration class is " "explicitly visible in the :mod:`omni.isaac.lab.envs` module. This makes " @@ -1407,29 +1481,29 @@ msgid "" "accessible through the same module." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:733 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:793 msgid "0.18.0 (2024-06-13)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:738 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:798 msgid "" "Fixed the rendering logic to render at the specified interval. Earlier, " "the substep parameter had no effect and rendering would happen once every" " env.step() when active." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:744 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:804 msgid "" "Renamed :attr:`omni.isaac.lab.sim.SimulationCfg.substeps` to " ":attr:`omni.isaac.lab.sim.SimulationCfg.render_interval`. The render " "logic is now integrated in the decimation loop of the environment." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:749 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:809 msgid "0.17.13 (2024-06-13)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:754 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:814 msgid "" "Fixed the orientation reset logic in " ":func:`omni.isaac.lab.envs.mdp.events.reset_root_state_uniform` to make " @@ -1437,17 +1511,17 @@ msgid "" " relative to the default and the orientation not." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:759 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:819 msgid "0.17.12 (2024-06-13)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:764 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:824 msgid "" "Added the class :class:`omni.isaac.lab.utils.buffers.TimestampedBuffer` " "to store timestamped data." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:769 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:829 msgid "" "Added time-stamped buffers in the classes " ":class:`omni.isaac.lab.assets.RigidObjectData` and " @@ -1457,11 +1531,11 @@ msgid "" " used by the task." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:775 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:835 msgid "0.17.11 (2024-05-30)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:780 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:840 msgid "" "Fixed :class:`omni.isaac.lab.sensor.ContactSensor` not loading correctly " "in extension mode. Earlier, the " @@ -1471,11 +1545,11 @@ msgid "" " which references it." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:786 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:846 msgid "0.17.10 (2024-05-30)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:791 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:851 msgid "" "Fixed compound classes being directly assigned in ``default_factory`` " "generator method :meth:`omni.isaac.lab.utils.configclass._return_f`, " @@ -1484,163 +1558,163 @@ msgid "" "``default_factory`` method." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:797 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:857 msgid "0.17.9 (2024-05-30)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:802 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:862 msgid "" "Added ``variants`` attribute to the " ":class:`omni.isaac.lab.sim.from_files.UsdFileCfg` class to select USD " "variants when loading assets from USD files." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:807 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:867 msgid "0.17.8 (2024-05-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:812 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:872 msgid "" "Implemented the reset methods in the action terms to avoid returning " "outdated data." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:816 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:876 msgid "0.17.7 (2024-05-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:821 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:881 msgid "" "Added debug visualization utilities in the " ":class:`omni.isaac.lab.managers.ActionManager` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:825 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:885 msgid "0.17.6 (2024-05-27)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:830 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:890 msgid "Added ``wp.init()`` call in Warp utils." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:834 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:894 msgid "0.17.5 (2024-05-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:839 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:899 msgid "" "Websocket livestreaming is no longer supported. Valid livestream options " "are {0, 1, 2}." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:840 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:900 msgid "WebRTC livestream is now set with livestream=2." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:844 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:904 msgid "0.17.4 (2024-05-17)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:849 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:909 msgid "" "Modified the noise functions to also support add, scale, and abs " "operations on the data. Added aliases to ensure backward compatibility " "with the previous functions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:852 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:912 msgid "" "Added :attr:`omni.isaac.lab.utils.noise.NoiseCfg.operation` for the " "different operations." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:853 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:913 msgid "" "Renamed ``constant_bias_noise`` to " ":func:`omni.isaac.lab.utils.noise.constant_noise`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:854 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:914 msgid "" "Renamed ``additive_uniform_noise`` to " ":func:`omni.isaac.lab.utils.noise.uniform_noise`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:855 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:915 msgid "" "Renamed ``additive_gaussian_noise`` to " ":func:`omni.isaac.lab.utils.noise.gaussian_noise`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:859 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:919 msgid "0.17.3 (2024-05-15)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:864 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:924 msgid "Set ``hide_ui`` flag in the app launcher for livestream." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:865 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:925 msgid "Fix native client livestream extensions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:869 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:929 msgid "0.17.2 (2024-05-09)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:874 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:934 msgid "" "Renamed ``_range`` to ``distribution_params`` in ``events.py`` for " "methods that defined a distribution." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:875 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:935 msgid "" "Apply additive/scaling randomization noise on default data instead of " "current data." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:876 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:936 msgid "Changed material bucketing logic to prevent exceeding 64k materials." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:881 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:941 msgid "" "Fixed broadcasting issues with indexing when environment and joint IDs " "are provided." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:882 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:942 msgid "Fixed incorrect tensor dimensions when setting a subset of environments." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:887 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:947 msgid "Added support for randomization of fixed tendon parameters." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:888 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:948 msgid "Added support for randomization of dof limits." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:889 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:949 msgid "Added support for randomization of gravity." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:890 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:950 msgid "Added support for Gaussian sampling." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:891 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:951 msgid "" "Added default buffers to Articulation/Rigid object data classes for " "randomization." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:895 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:955 msgid "0.17.1 (2024-05-10)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:900 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:960 msgid "" "Added attribute " ":attr:`omni.isaac.lab.sim.converters.UrdfConverterCfg.override_joint_dynamics`" @@ -1648,83 +1722,83 @@ msgid "" ":class:`omni.isaac.lab.sim.converters.UrdfConverter`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:905 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:965 msgid "0.17.0 (2024-05-07)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:910 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:970 msgid "Renamed ``BaseEnv`` to :class:`omni.isaac.lab.envs.ManagerBasedEnv`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:911 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:971 msgid "Renamed ``base_env.py`` to ``manager_based_env.py``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:912 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:972 msgid "Renamed ``BaseEnvCfg`` to :class:`omni.isaac.lab.envs.ManagerBasedEnvCfg`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:913 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:973 msgid "Renamed ``RLTaskEnv`` to :class:`omni.isaac.lab.envs.ManagerBasedRLEnv`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:914 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:974 msgid "Renamed ``rl_task_env.py`` to ``manager_based_rl_env.py``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:915 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:975 msgid "" "Renamed ``RLTaskEnvCfg`` to " ":class:`omni.isaac.lab.envs.ManagerBasedRLEnvCfg`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:916 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:976 msgid "Renamed ``rl_task_env_cfg.py`` to ``rl_env_cfg.py``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:917 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:977 msgid "Renamed ``OIGEEnv`` to :class:`omni.isaac.lab.envs.DirectRLEnv`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:918 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:978 msgid "Renamed ``oige_env.py`` to ``direct_rl_env.py``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:919 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:979 msgid "" "Renamed ``RLTaskEnvWindow`` to " ":class:`omni.isaac.lab.envs.ui.ManagerBasedRLEnvWindow`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:920 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:980 msgid "Renamed ``rl_task_env_window.py`` to ``manager_based_rl_env_window.py``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:921 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:981 msgid "" "Renamed all references of ``BaseEnv``, ``BaseEnvCfg``, ``RLTaskEnv``, " "``RLTaskEnvCfg``, ``OIGEEnv``, and ``RLTaskEnvWindow``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:926 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:986 msgid "Added direct workflow base class :class:`omni.isaac.lab.envs.DirectRLEnv`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:930 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:990 msgid "0.16.4 (2024-05-06)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:935 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:995 msgid "" "Added :class:`omni.isaac.lab.sensors.TiledCamera` to support tiled " "rendering with RGB and depth." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:939 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:999 msgid "0.16.3 (2024-04-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:944 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1004 msgid "" "Fixed parsing of filter prim path expressions in the " ":class:`omni.isaac.lab.sensors.ContactSensor` class. Earlier, the filter " @@ -1732,47 +1806,47 @@ msgid "" " specified as regex expressions instead of glob expressions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:950 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1010 msgid "0.16.2 (2024-04-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:955 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1015 msgid "Simplified the installation procedure, isaaclab -e is no longer needed" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:956 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1016 msgid "Updated torch dependency to 2.2.2" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:960 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1020 msgid "0.16.1 (2024-04-20)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:965 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1025 msgid "" "Added attribute " ":attr:`omni.isaac.lab.sim.ArticulationRootPropertiesCfg.fix_root_link` to" " fix the root link of an articulation to the world frame." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:970 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1030 msgid "0.16.0 (2024-04-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:975 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1035 msgid "" "Added the function :meth:`omni.isaac.lab.utils.math.quat_unique` to " "standardize quaternion representations, i.e. always have a non-negative " "real part." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:977 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1037 msgid "" "Added events terms for randomizing mass by scale, simulation joint " "properties (stiffness, damping, armature, and friction)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:983 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1043 msgid "" "Added clamping of joint positions and velocities in event terms for " "resetting joints. The simulation does not throw an error if the set " @@ -1780,69 +1854,69 @@ msgid "" "before setting." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:985 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1045 msgid "" "Fixed :class:`omni.isaac.lab.envs.mdp.EMAJointPositionToLimitsActionCfg` " "to smoothen the actions at environment frequency instead of simulation " "frequency." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:988 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1048 msgid "" "Renamed the following functions in :meth:`omni.isaac.lab.envs.mdp` to " "avoid confusions:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:990 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1050 msgid "Observation: :meth:`joint_pos_norm` -> :meth:`joint_pos_limit_normalized`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:991 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1051 msgid "" "Action: :class:`ExponentialMovingAverageJointPositionAction` -> " ":class:`EMAJointPositionToLimitsAction`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:992 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1052 msgid "Termination: :meth:`base_height` -> :meth:`root_height_below_minimum`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:993 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1053 msgid "Termination: :meth:`joint_pos_limit` -> :meth:`joint_pos_out_of_limit`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:994 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1054 msgid "" "Termination: :meth:`joint_pos_manual_limit` -> " ":meth:`joint_pos_out_of_manual_limit`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:995 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1055 msgid "Termination: :meth:`joint_vel_limit` -> :meth:`joint_vel_out_of_limit`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:996 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1056 msgid "" "Termination: :meth:`joint_vel_manual_limit` -> " ":meth:`joint_vel_out_of_manual_limit`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:997 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1057 msgid "" "Termination: :meth:`joint_torque_limit` -> " ":meth:`joint_effort_out_of_limit`" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1000 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1176 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1561 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2517 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2698 -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3044 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1060 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1236 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1621 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2577 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2758 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3104 msgid "Deprecated" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1002 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1062 msgid "" "Deprecated the function :meth:`omni.isaac.lab.envs.mdp.add_body_mass` in " "favor of :meth:`omni.isaac.lab.envs.mdp.randomize_rigid_body_mass`. This " @@ -1850,27 +1924,27 @@ msgid "" "or set) and sampling distributions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1008 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1068 msgid "0.15.13 (2024-04-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1013 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1073 msgid "" "Improved startup performance by enabling rendering-based extensions only " "when necessary and caching of nucleus directory." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1014 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1074 msgid "" "Renamed the flag ``OFFSCREEN_RENDER`` or ``--offscreen_render`` to " "``ENABLE_CAMERAS`` or ``--enable_cameras`` respectively." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1018 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1078 msgid "0.15.12 (2024-04-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1023 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1083 msgid "" "Replaced calls to the ``check_file_path`` function in the " ":mod:`omni.isaac.lab.sim.spawners.from_files` with the USD stage resolve " @@ -1878,11 +1952,11 @@ msgid "" "paths by avoiding Nucleus server calls." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1029 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1089 msgid "0.15.11 (2024-04-15)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1034 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1094 msgid "" "Added the :meth:`omni.isaac.lab.sim.SimulationContext.has_rtx_sensors` " "method to check if any RTX-related sensors such as cameras have been " @@ -1890,7 +1964,7 @@ msgid "" "requires RTX rendering during step or not." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1041 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1101 msgid "" "Fixed the rendering of RTX-related sensors such as cameras inside the " ":class:`omni.isaac.lab.envs.RLTaskEnv` class. Earlier the rendering did " @@ -1898,11 +1972,11 @@ msgid "" "empty." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1046 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1106 msgid "0.15.10 (2024-04-11)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1051 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1111 msgid "" "Fixed sharing of the same memory address between returned tensors from " "observation terms in the " @@ -1912,11 +1986,11 @@ msgid "" "operations." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1058 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1118 msgid "0.15.9 (2024-04-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1063 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1123 msgid "" "Fixed assignment of individual termination terms inside the " ":class:`omni.isaac.lab.managers.TerminationManager` class. Earlier, the " @@ -1925,22 +1999,22 @@ msgid "" "0.15.1." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1069 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1129 msgid "0.15.8 (2024-04-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1074 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1134 msgid "" "Added option to define ordering of points for the mesh-grid generation in" " the :func:`omni.isaac.lab.sensors.ray_caster.patterns.grid_pattern`. " "This parameter defaults to 'xy' for backward compatibility." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1080 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1140 msgid "0.15.7 (2024-03-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1085 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1145 msgid "" "Adds option to return indices/data in the specified query keys order in " ":class:`omni.isaac.lab.managers.SceneEntityCfg` class, and the respective" @@ -1948,11 +2022,11 @@ msgid "" ":func:`omni.isaac.lab.utils.string.resolve_matching_names` functions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1092 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1152 msgid "0.15.6 (2024-03-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1097 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1157 msgid "" "Extended the :class:`omni.isaac.lab.app.AppLauncher` class to support the" " loading of experience files from the command line. This allows users to " @@ -1960,69 +2034,69 @@ msgid "" " multi-camera rendering or headless mode)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1104 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1164 msgid "" "Changed default loading of experience files in the " ":class:`omni.isaac.lab.app.AppLauncher` class from the ones provided by " "Isaac Sim to the ones provided in Isaac Lab's ``source/apps`` directory." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1109 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1169 msgid "0.15.5 (2024-03-23)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1114 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1174 msgid "" "Fixed the env origins in :meth:`_compute_env_origins_grid` of " ":class:`omni.isaac.lab.terrain.TerrainImporter` to match that obtained " "from the Isaac Sim :class:`omni.isaac.cloner.GridCloner` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1120 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1180 msgid "" "Added unit test to ensure consistency between environment origins " "generated by IsaacSim's Grid Cloner and those produced by the " "TerrainImporter." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1125 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1185 msgid "0.15.4 (2024-03-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1130 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1190 msgid "" "Fixed the :class:`omni.isaac.lab.envs.mdp.actions.NonHolonomicActionCfg` " "class to use the correct variable when applying actions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1135 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1195 msgid "0.15.3 (2024-03-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1140 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1200 msgid "" "Added unit test to check that " ":class:`omni.isaac.lab.scene.InteractiveScene` entity data is not shared " "between separate instances." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1145 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1205 msgid "" "Moved class variables in :class:`omni.isaac.lab.scene.InteractiveScene` " "to correctly be assigned as instance variables." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1147 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1207 msgid "" "Removed custom ``__del__`` magic method from " ":class:`omni.isaac.lab.scene.InteractiveScene`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1151 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1211 msgid "0.15.2 (2024-03-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1156 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1216 msgid "" "Added resolving of relative paths for the main asset USD file when using " "the :class:`omni.isaac.lab.sim.converters.UrdfConverter` class. This is " @@ -2030,17 +2104,17 @@ msgid "" "asset file is moved to a different location." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1162 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1222 msgid "0.15.1 (2024-03-19)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1167 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1227 msgid "" "Fixed the imitation learning workflow example script, updating Isaac Lab " "and Robomimic API calls." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1168 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1228 msgid "" "Removed the resetting of :attr:`_term_dones` in the " ":meth:`omni.isaac.lab.managers.TerminationManager.reset`. Previously, the" @@ -2048,11 +2122,11 @@ msgid "" "specific term's values externally." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1173 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1233 msgid "0.15.0 (2024-03-17)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1178 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1238 msgid "" "Renamed :class:`omni.isaac.lab.managers.RandomizationManager` to " ":class:`omni.isaac.lab.managers.EventManager` class for clarification as " @@ -2060,34 +2134,34 @@ msgid "" "randomizations." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1180 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1240 msgid "" "Renamed :class:`omni.isaac.lab.managers.RandomizationTermCfg` to " ":class:`omni.isaac.lab.managers.EventTermCfg` for consistency with the " "class name change." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1185 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1245 msgid "0.14.1 (2024-03-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1190 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1250 msgid "" "Added simulation schemas for joint drive and fixed tendons. These can be " "configured for assets imported from file formats." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1192 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1252 msgid "" "Added logging of tendon properties to the articulation class (if they are" " present in the USD prim)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1196 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1256 msgid "0.14.0 (2024-03-15)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1201 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1261 msgid "" "Fixed the ordering of body names used in the " ":class:`omni.isaac.lab.assets.Articulation` class. Earlier, the body " @@ -2097,7 +2171,7 @@ msgid "" " matrices, etc.)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1209 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1269 msgid "" "Removed the attribute :attr:`body_physx_view` from the " ":class:`omni.isaac.lab.assets.RigidObject` and " @@ -2106,11 +2180,11 @@ msgid "" " following the same ordering." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1215 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1275 msgid "0.13.1 (2024-03-14)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1220 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1280 msgid "" "Removed the :mod:`omni.isaac.lab.compat` module. This module was used to " "provide compatibility with older versions of Isaac Sim. It is no longer " @@ -2118,11 +2192,11 @@ msgid "" "classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1226 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1286 msgid "0.13.0 (2024-03-12)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1231 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1291 msgid "" "Added support for the following data types inside the " ":class:`omni.isaac.lab.sensors.Camera` class: " @@ -2131,7 +2205,7 @@ msgid "" "annotations." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1238 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1298 msgid "" "Fixed handling of semantic filtering inside the " ":class:`omni.isaac.lab.sensors.Camera` class. Earlier, the annotator was " @@ -2140,7 +2214,7 @@ msgid "" " be set to the synthetic data interface directly." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1241 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1301 msgid "" "Fixed the return shape of colored images for segmentation data types " "inside the :class:`omni.isaac.lab.sensors.Camera` class. Earlier, the " @@ -2149,7 +2223,7 @@ msgid "" " the annotation type." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1248 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1308 msgid "" "Dropped support for ``instance_segmentation`` and " "``instance_id_segmentation`` annotations in the " @@ -2157,7 +2231,7 @@ msgid "" " should be used instead." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1250 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1310 msgid "" "Renamed the argument " ":attr:`omni.isaac.lab.sensors.CameraCfg.semantic_types` to " @@ -2165,7 +2239,7 @@ msgid "" "aligned with Replicator's terminology for semantic filter predicates." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1253 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1313 msgid "" "Replaced the argument :attr:`omni.isaac.lab.sensors.CameraCfg.colorize` " "with separate colorized arguments for each annotation type " @@ -2176,29 +2250,29 @@ msgid "" ":attr:`~omni.isaac.lab.sensors.CameraCfg.colorize_semantic_segmentation`)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1260 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1320 msgid "0.12.4 (2024-03-11)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1266 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1326 msgid "" "Adapted randomization terms to deal with ``slice`` for the body indices. " "Earlier, the terms were not able to handle the slice object and were " "throwing an error." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1268 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1328 msgid "" "Added ``slice`` type-hinting to all body and joint related methods in the" " rigid body and articulation classes. This is to make it clear that the " "methods can handle both list of indices and slices." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1273 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1333 msgid "0.12.3 (2024-03-11)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1278 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1338 msgid "" "Added signal handler to the :class:`omni.isaac.lab.app.AppLauncher` class" " to catch the ``SIGINT`` signal and close the application gracefully. " @@ -2206,47 +2280,47 @@ msgid "" "``Ctrl+C`` to close the application." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1284 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1344 msgid "0.12.2 (2024-03-10)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1289 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1349 msgid "Added observation terms for states of a rigid object in world frame." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1290 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1350 msgid "" "Added randomization terms to set root state with randomized orientation " "and joint state within user-specified limits." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1291 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1351 msgid "Added reward term for penalizing specific termination terms." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1296 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1356 msgid "" "Improved sampling of states inside randomization terms. Earlier, the code" " did multiple torch calls for sampling different components of the " "vector. Now, it uses a single call to sample the entire vector." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1301 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1361 msgid "0.12.1 (2024-03-09)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1306 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1366 msgid "" "Added an option to the last actions observation term to get a specific " "term by name from the action manager. If None, the behavior remains the " "same as before (the entire action is returned)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1311 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1371 msgid "0.12.0 (2024-03-08)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1316 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1376 msgid "" "Added functionality to sample flat patches on a generated terrain. This " "can be configured using " @@ -2254,24 +2328,24 @@ msgid "" "attribute." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1318 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1378 msgid "" "Added a randomization function for setting terrain-aware root state. " "Through this, an asset can be reset to a randomly sampled flat patches." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1324 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1384 msgid "" "Separated normal and terrain-base position commands. The terrain based " "commands rely on the terrain to sample flat patches for setting the " "target position." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1326 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1386 msgid "Fixed command resample termination function." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1331 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1391 msgid "" "Added the attribute " ":attr:`omni.isaac.lab.envs.mdp.commands.UniformVelocityCommandCfg.heading_control_stiffness`" @@ -2279,7 +2353,7 @@ msgid "" "command term. Earlier, this was hard-coded to 0.5 inside the term." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1338 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1398 msgid "" "Removed the function :meth:`sample_new_targets` in the terrain importer. " "Instead the attribute " @@ -2287,11 +2361,11 @@ msgid "" "used to sample new targets." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1343 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1403 msgid "0.11.3 (2024-03-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1348 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1408 msgid "" "Corrects the functions " ":func:`omni.isaac.lab.utils.math.axis_angle_from_quat` and " @@ -2301,11 +2375,11 @@ msgid "" "dimensions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1354 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1414 msgid "0.11.2 (2024-03-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1359 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1419 msgid "" "Added checks for default joint position and joint velocity in the " "articulation class. This is to prevent users from configuring values for " @@ -2313,28 +2387,28 @@ msgid "" "simulation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1364 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1424 msgid "0.11.1 (2024-02-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1369 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1429 msgid "" "Replaced the default values for ``joint_ids`` and ``body_ids`` from " "``None`` to ``slice(None)`` in the " ":class:`omni.isaac.lab.managers.SceneEntityCfg`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1371 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1431 msgid "" "Adapted rewards and observations terms so that the users can query a " "subset of joints and bodies." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1375 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1435 msgid "0.11.0 (2024-02-27)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1380 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1440 msgid "" "Dropped support for Isaac Sim<=2022.2. As part of this, removed the " "components of :class:`omni.isaac.lab.app.AppLauncher` which handled ROS " @@ -2342,15 +2416,15 @@ msgid "" " the load order to avoid crashes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1382 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1442 msgid "Upgraded Dockerfile to use ISAACSIM_VERSION=2023.1.1 by default." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1386 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1446 msgid "0.10.28 (2024-02-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1391 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1451 msgid "" "Implemented relative and moving average joint position action terms. " "These allow the user to specify the target joint positions as relative to" @@ -2358,11 +2432,11 @@ msgid "" "positions over a window of time." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1397 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1457 msgid "0.10.27 (2024-02-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1402 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1462 msgid "" "Added UI feature to start and stop animation recording in the stage when " "running an environment. To enable this feature, please pass the argument " @@ -2370,11 +2444,11 @@ msgid "" "operations. Be aware that this will slow down the simulation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1408 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1468 msgid "0.10.26 (2024-02-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1413 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1473 msgid "" "Added a viewport camera controller class to the " ":class:`omni.isaac.lab.envs.BaseEnv`. This is useful for applications " @@ -2382,29 +2456,29 @@ msgid "" "even when the simulation is running in headless mode." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1419 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1479 msgid "0.10.25 (2024-02-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1424 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1484 msgid "" "Ensures that all path arguments in :mod:`omni.isaac.lab.sim.utils` are " "cast to ``str``. Previously, we had handled path types as strings without" " casting." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1429 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1489 msgid "0.10.24 (2024-02-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1434 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1494 msgid "" "Added tracking of contact time in the " ":class:`omni.isaac.lab.sensors.ContactSensor` class. Previously, only the" " air time was being tracked." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1436 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1496 msgid "" "Added contact force threshold, " ":attr:`omni.isaac.lab.sensors.ContactSensorCfg.force_threshold`, to " @@ -2412,11 +2486,11 @@ msgid "" " hard-coded 1.0 in the sensor class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1441 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1501 msgid "0.10.23 (2024-02-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1446 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1506 msgid "" "Fixes the order of size arguments in " ":meth:`omni.isaac.lab.terrains.height_field.random_uniform_terrain`. " @@ -2424,11 +2498,11 @@ msgid "" "the same." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1450 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1510 msgid "0.10.22 (2024-02-14)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1455 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1515 msgid "" "Fixed \"divide by zero\" bug in " ":class:`~omni.isaac.lab.sim.SimulationContext` when setting gravity " @@ -2436,11 +2510,11 @@ msgid "" "zero." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1460 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1520 msgid "0.10.21 (2024-02-12)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1465 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1525 msgid "" "Fixed the printing of articulation joint information when the " "articulation has only one joint. Earlier, the function was performing a " @@ -2448,33 +2522,33 @@ msgid "" "index the tensor of shape (1,)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1471 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1531 msgid "0.10.20 (2024-02-12)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1476 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1536 msgid "" "Adds :attr:`omni.isaac.lab.sim.PhysxCfg.enable_enhanced_determinism` to " "enable improved determinism from PhysX. Please note this comes at the " "expense of performance." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1481 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1541 msgid "0.10.19 (2024-02-08)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1486 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1546 msgid "" "Fixed environment closing so that articulations, objects, and sensors are" " cleared properly." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1490 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1550 msgid "0.10.18 (2024-02-05)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1495 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:348 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1555 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:360 msgid "" "Pinned :mod:`torch` version to 2.0.1 in the setup.py to keep parity " "version of :mod:`torch` supplied by Isaac 2023.1.1, and prevent version " @@ -2482,11 +2556,11 @@ msgid "" "==3.7.4.3" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1501 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1561 msgid "0.10.17 (2024-02-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1506 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1566 msgid "" "Fixed carb setting ``/app/livestream/enabled`` to be set as False unless " "live-streaming is specified by :class:`omni.isaac.lab.app.AppLauncher` " @@ -2495,54 +2569,54 @@ msgid "" " for this setting." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1512 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1572 msgid "0.10.16 (2024-01-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1517 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1577 msgid "" "Added an offset parameter to the height scan observation term. This " "allows the user to specify the height offset of the scan from the tracked" " body. Previously it was hard-coded to be 0.5." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1522 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1582 msgid "0.10.15 (2024-01-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1527 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1587 msgid "" "Fixed joint torque computation for implicit actuators. Earlier, the " "torque was always zero for implicit actuators. Now, it is computed " "approximately by applying the PD law." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1532 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1592 msgid "0.10.14 (2024-01-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1537 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1597 msgid "" "Fixed the tensor shape of " ":attr:`omni.isaac.lab.sensors.ContactSensorData.force_matrix_w`. Earlier," " the reshaping led to a mismatch with the data obtained from PhysX." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1542 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1602 msgid "0.10.13 (2024-01-15)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1547 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1607 msgid "" "Fixed running of environments with a single instance even if the " ":attr:`replicate_physics`` flag is set to True." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1551 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1611 msgid "0.10.12 (2024-01-10)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1556 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1616 msgid "" "Fixed indexing of source and target frames in the " ":class:`omni.isaac.lab.sensors.FrameTransformer` class. Earlier, it " @@ -2550,7 +2624,7 @@ msgid "" " body index of the source frame to compute the transformation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1563 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1623 msgid "" "Renamed quantities in the " ":class:`omni.isaac.lab.sensors.FrameTransformerData` class to be more " @@ -2558,30 +2632,30 @@ msgid "" "quantities are deprecated:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1566 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1626 msgid "``target_rot_w`` -> ``target_quat_w``" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1567 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1627 msgid "``source_rot_w`` -> ``source_quat_w``" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1568 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1628 msgid "``target_rot_source`` -> ``target_quat_source``" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1572 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1632 msgid "0.10.11 (2024-01-08)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1577 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1637 msgid "" "Fixed attribute error raised when calling the " ":class:`omni.isaac.lab.envs.mdp.TerrainBasedPositionCommand` command " "term." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1579 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1639 msgid "" "Added a dummy function in :class:`omni.isaac.lab.terrain.TerrainImporter`" " that returns environment origins as terrain-aware sampled targets. This " @@ -2589,11 +2663,11 @@ msgid "" "type." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1585 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1645 msgid "0.10.10 (2023-12-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1590 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1650 msgid "" "Fixed reliance on non-existent ``Viewport`` in " ":class:`omni.isaac.lab.sim.SimulationContext` when loading livestreaming " @@ -2601,33 +2675,33 @@ msgid "" " :class:`omni.isaac.lab.app.AppLauncher` when livestreaming is enabled" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1596 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1656 msgid "0.10.9 (2023-12-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1601 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1661 msgid "" "Fixed invalidation of physics views inside the asset and sensor classes. " "Earlier, they were left initialized even when the simulation was stopped." " This caused issues when closing the application." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1606 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1666 msgid "0.10.8 (2023-12-20)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1611 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1671 msgid "" "Fixed the " ":class:`omni.isaac.lab.envs.mdp.actions.DifferentialInverseKinematicsAction`" " class to account for the offset pose of the end-effector." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1616 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1676 msgid "0.10.7 (2023-12-19)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1621 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1681 msgid "" "Added a check to ray-cast and camera sensor classes to ensure that the " "sensor prim path does not have a regex expression at its leaf. For " @@ -2635,11 +2709,11 @@ msgid "" "types. This behavior needs to be fixed in the future." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1627 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1687 msgid "0.10.6 (2023-12-19)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1632 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1692 msgid "" "Added support for using articulations as visualization markers. This " "disables all physics APIs from the articulation and allows the user to " @@ -2647,18 +2721,18 @@ msgid "" " markers for the end-effectors or base of the robot." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1639 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1699 msgid "" "Fixed hiding of debug markers from secondary images when using the " ":class:`omni.isaac.lab.markers.VisualizationMarkers` class. Earlier, the " "properties were applied on the XForm prim instead of the Mesh prim." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1645 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1705 msgid "0.10.5 (2023-12-18)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1650 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1710 msgid "" "Fixed test ``check_base_env_anymal_locomotion.py``, which previously " "called :func:`torch.jit.load` with the path to a policy (which would work" @@ -2667,47 +2741,47 @@ msgid "" " itself." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1657 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1717 msgid "0.10.4 (2023-12-14)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1662 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1722 msgid "" "Fixed potentially breaking import of omni.kit.widget.toolbar by ensuring " "that if live-stream is enabled, then the :mod:`omni.kit.widget.toolbar` " "extension is loaded." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1667 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1727 msgid "0.10.3 (2023-12-12)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1672 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1732 msgid "" "Added the attribute " ":attr:`omni.isaac.lab.actuators.ActuatorNetMLPCfg.input_order` to specify" " the order of the input tensors to the MLP network." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1678 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1738 msgid "" "Fixed computation of metrics for the velocity command term. Earlier, the " "norm was being computed over the entire batch instead of the last " "dimension." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1680 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1740 msgid "" "Fixed the clipping inside the :class:`omni.isaac.lab.actuators.DCMotor` " "class. Earlier, it was not able to handle the case when configured " "saturation limit was set to None." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1685 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1745 msgid "0.10.2 (2023-12-12)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1690 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1750 msgid "" "Added a check in the simulation stop callback in the " ":class:`omni.isaac.lab.sim.SimulationContext` class to not render when an" @@ -2715,22 +2789,22 @@ msgid "" "application from closing when an exception was raised." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1696 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1756 msgid "0.10.1 (2023-12-06)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1701 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1761 msgid "" "Added command manager class with terms defined by " ":class:`omni.isaac.lab.managers.CommandTerm`. This allow for multiple " "types of command generators to be used in the same environment." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1706 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1766 msgid "0.10.0 (2023-12-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1711 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1771 msgid "" "Modified the sensor and asset base classes to use the underlying PhysX " "views instead of Isaac Sim views. Using Isaac Sim classes led to a very " @@ -2739,13 +2813,13 @@ msgid "" "not required." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1718 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1778 msgid "" "Added faster implementation of USD stage traversal methods inside the " ":class:`omni.isaac.lab.sim.utils` module." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1719 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1779 msgid "" "Added properties :attr:`omni.isaac.lab.assets.AssetBase.num_instances` " "and :attr:`omni.isaac.lab.sensor.SensorBase.num_instances` to obtain the " @@ -2753,7 +2827,7 @@ msgid "" "respectively." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1726 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1786 msgid "" "Removed dependencies on Isaac Sim view classes. It is no longer possible " "to use :attr:`root_view` and :attr:`body_view`. Instead use " @@ -2761,22 +2835,22 @@ msgid "" "underlying PhysX views." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1732 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1792 msgid "0.9.55 (2023-12-03)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1737 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1797 msgid "" "Fixed the Nucleus directory path in the " ":attr:`omni.isaac.lab.utils.assets.NVIDIA_NUCLEUS_DIR`. Earlier, it was " "referring to the ``NVIDIA/Assets`` directory instead of ``NVIDIA``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1742 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1802 msgid "0.9.54 (2023-11-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1747 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1807 msgid "" "Fixed pose computation in the :class:`omni.isaac.lab.sensors.Camera` " "class to obtain them from XFormPrimView instead of using " @@ -2784,14 +2858,14 @@ msgid "" "updated correctly during GPU simulation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1750 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1810 msgid "" "Fixed initialization of the annotator info in the class " ":class:`omni.isaac.lab.sensors.Camera`. Previously all dicts had the same" " memory address which caused all annotators to have the same info." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1752 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1812 msgid "" "Fixed the conversion of ``uint32`` warp arrays inside the " ":meth:`omni.isaac.lab.utils.array.convert_to_torch` method. PyTorch does " @@ -2799,18 +2873,18 @@ msgid "" "to PyTorch tensor." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1754 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1814 msgid "" "Added render call inside " ":meth:`omni.isaac.lab.sim.SimulationContext.reset` to initialize " "Replicator buffers when the simulation is reset." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1759 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1819 msgid "0.9.53 (2023-11-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1764 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1824 msgid "" "Changed the behavior of passing :obj:`None` to the " ":class:`omni.isaac.lab.actuators.ActuatorBaseCfg` class. Earlier, they " @@ -2818,17 +2892,17 @@ msgid "" "are loaded from the USD joint drive configuration." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1771 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1831 msgid "" "Added setting of joint armature and friction quantities to the " "articulation class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1775 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1835 msgid "0.9.52 (2023-11-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1780 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1840 msgid "" "Changed the warning print in " ":meth:`omni.isaac.lab.sim.utils.apply_nested` method to be more " @@ -2837,51 +2911,51 @@ msgid "" " of the prims." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1787 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1847 msgid "" "Added the method :meth:`omni.isaac.lab.utils.assets.retrieve_file_path` " "to obtain the absolute path of a file on the Nucleus server or locally." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1793 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1853 msgid "" "Fixed hiding of STOP button in the :class:`AppLauncher` class when " "running the simulation in headless mode." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1795 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1855 msgid "" "Fixed a bug with :meth:`omni.isaac.lab.sim.utils.clone` failing when the " "input prim path had no parent (example: \"/Table\")." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1800 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1860 msgid "0.9.51 (2023-11-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1805 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1865 msgid "" "Changed the :meth:`omni.isaac.lab.sensor.SensorBase.update` method to " "always recompute the buffers if the sensor is in visualization mode." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1811 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1871 msgid "" "Added available entities to the error message when accessing a non-" "existent entity in the :class:`InteractiveScene` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1813 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1873 msgid "" "Added a warning message when the user tries to reference an invalid prim " "in the :class:`FrameTransformer` sensor." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1817 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1877 msgid "0.9.50 (2023-11-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1822 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1882 msgid "" "Hid the ``STOP`` button in the UI when running standalone Python scripts." " This is to prevent users from accidentally clicking the button and " @@ -2889,46 +2963,46 @@ msgid "" "simulation from the UI." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1829 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1889 msgid "" "Removed :attr:`omni.isaac.lab.sim.SimulationCfg.shutdown_app_on_stop`. " "The simulation is always rendering if it is stopped from the UI. The user" " needs to close the window or press ``Ctrl+C`` to close the simulation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1834 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1894 msgid "0.9.49 (2023-11-27)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1839 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1899 msgid "" "Added an interface class, " ":class:`omni.isaac.lab.managers.ManagerTermBase`, to serve as the parent " "class for term implementations that are functional classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1841 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1901 msgid "" "Adapted all managers to support terms that are classes and not just " "functions clearer. This allows the user to create more complex terms that" " require additional state information." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1846 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1906 msgid "0.9.48 (2023-11-24)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1851 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1911 msgid "" "Fixed initialization of drift in the " ":class:`omni.isaac.lab.sensors.RayCasterCamera` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1855 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1915 msgid "0.9.47 (2023-11-24)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1860 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1920 msgid "" "Automated identification of the root prim in the " ":class:`omni.isaac.lab.assets.RigidObject` and " @@ -2937,11 +3011,11 @@ msgid "" "the root prim under the spawn prim path." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1866 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1926 msgid "0.9.46 (2023-11-24)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1871 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1931 msgid "" "Fixed a critical issue in the asset classes with writing states into " "physics handles. Earlier, the states were written over all the indices " @@ -2950,11 +3024,11 @@ msgid "" " which is not desirable." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1878 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1938 msgid "0.9.45 (2023-11-24)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1883 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1943 msgid "" "Added " ":class:`omni.isaac.lab.command_generators.UniformPoseCommandGenerator` to" @@ -2962,22 +3036,22 @@ msgid "" "given range." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1888 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1948 msgid "0.9.44 (2023-11-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1893 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1953 msgid "" "Added methods :meth:`reset` and :meth:`step` to the " ":class:`omni.isaac.lab.envs.BaseEnv`. This unifies the environment " "interface for simple standalone applications with the class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1898 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1958 msgid "0.9.43 (2023-11-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1903 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1963 msgid "" "Replaced subscription of physics play and stop events in the " ":class:`omni.isaac.lab.assets.AssetBase` and " @@ -2987,11 +3061,11 @@ msgid "" " immediately. For instance, with deformable meshes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1910 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1970 msgid "0.9.42 (2023-11-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1915 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1975 msgid "" "Fixed setting of damping values from the configuration for " ":class:`ActuatorBase` class. Earlier, the stiffness values were being set" @@ -2999,26 +3073,26 @@ msgid "" "model." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1918 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1978 msgid "" "Added dealing with :class:`int` and :class:`float` values in the " "configurations of :class:`ActuatorBase`. Earlier, a type-error was thrown" " when integer values were passed to the actuator model." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1923 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1983 msgid "0.9.41 (2023-11-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1928 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1988 msgid "Fixed the naming and shaping issues in the binary joint action term." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1932 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1992 msgid "0.9.40 (2023-11-09)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1937 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1997 msgid "" "Simplified the manual initialization of Isaac Sim " ":class:`ArticulationView` class. Earlier, we basically copied the code " @@ -3026,7 +3100,7 @@ msgid "" "method." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1943 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2003 msgid "" "Changed the name of attribute :attr:`default_root_state_w` to " ":attr:`default_root_state`. The latter is more correct since the data is " @@ -3034,28 +3108,28 @@ msgid "" "frame." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1948 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2008 msgid "0.9.39 (2023-11-08)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1953 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2013 msgid "" "Changed the reference of private ``_body_view`` variable inside the " ":class:`RigidObject` class to the public ``body_view`` property. For a " "rigid object, the private variable is not defined." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1958 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2018 msgid "0.9.38 (2023-11-07)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1963 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2023 msgid "" "Upgraded the :class:`omni.isaac.lab.envs.RLTaskEnv` class to support Gym " "0.29.0 environment definition." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1968 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2028 msgid "" "Added computation of ``time_outs`` and ``terminated`` signals inside the " "termination manager. These follow the definition mentioned in `Gym 0.29.0" @@ -3063,36 +3137,36 @@ msgid "" "`_." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1970 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2030 msgid "" "Added proper handling of observation and action spaces in the " ":class:`omni.isaac.lab.envs.RLTaskEnv` class. These now follow closely to" " how Gym VecEnv handles the spaces." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1975 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2035 msgid "0.9.37 (2023-11-06)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1980 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2040 msgid "" "Fixed broken visualization in " ":mod:`omni.isaac.lab.sensors.FrameTramsformer` class by overwriting the " "correct ``_debug_vis_callback`` function." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1982 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2042 msgid "" "Moved the visualization marker configurations of sensors to their " "respective sensor configuration classes. This allows users to set these " "configurations from the configuration object itself." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1987 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2047 msgid "0.9.36 (2023-11-03)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1992 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2052 msgid "" "Added explicit deleting of different managers in the " ":class:`omni.isaac.lab.envs.BaseEnv` and " @@ -3101,11 +3175,11 @@ msgid "" "deleted before the scene is deleted)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:1998 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2058 msgid "0.9.35 (2023-11-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2003 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2063 msgid "" "Fixed the error: ``'str' object has no attribute '__module__'`` " "introduced by adding the future import inside the " @@ -3113,22 +3187,22 @@ msgid "" "support the ``__future__`` imports." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2008 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2068 msgid "0.9.34 (2023-11-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2013 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2073 msgid "" "Added missing import of ``from __future__ import annotations`` in the " ":mod:`omni.isaac.lab.utils.warp` module. This is needed to have a " "consistent behavior across Python versions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2018 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2078 msgid "0.9.33 (2023-11-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2023 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2083 msgid "" "Fixed the :class:`omni.isaac.lab.command_generators.NullCommandGenerator`" " class. Earlier, it was having a runtime error due to infinity in the " @@ -3136,22 +3210,22 @@ msgid "" "to perform no operations." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2029 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2089 msgid "0.9.32 (2023-11-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2034 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2094 msgid "" "Renamed the :class:`omni.isaac.lab.envs.RLEnv` class to " ":class:`omni.isaac.lab.envs.RLTaskEnv` to avoid confusions in " "terminologies between environments and tasks." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2039 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2099 msgid "0.9.31 (2023-11-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2044 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2104 #, python-format msgid "" "Added the :class:`omni.isaac.lab.sensors.RayCasterCamera` class, as a " @@ -3161,18 +3235,18 @@ msgid "" "30% faster." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2050 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2110 msgid "0.9.30 (2023-11-01)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2055 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2115 msgid "" "Added skipping of None values in the :class:`InteractiveScene` class when" " creating the scene from configuration objects. Earlier, it was throwing " "an error when the user passed a None value for a scene element." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2057 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2117 msgid "" "Added ``kwargs`` to the :class:`RLEnv` class to allow passing additional " "arguments from gym registry function. This is now needed since the " @@ -3180,11 +3254,11 @@ msgid "" "constructor." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2062 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2122 msgid "0.9.29 (2023-11-01)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2067 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2127 msgid "" "Fixed the material path resolution inside the " ":class:`omni.isaac.lab.sim.converters.UrdfConverter` class. With Isaac " @@ -3194,11 +3268,11 @@ msgid "" " to the USD file location." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2074 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2134 msgid "0.9.28 (2023-11-01)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2079 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2139 msgid "" "Changed the way the " ":func:`omni.isaac.lab.sim.spawners.from_files.spawn_ground_plane` " @@ -3208,18 +3282,18 @@ msgid "" "the other spawner functions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2085 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2145 msgid "0.9.27 (2023-10-31)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2090 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2150 msgid "" "Removed the default value of the argument ``camel_case`` in setters of " "USD attributes. This is to avoid confusion with the naming of the " "attributes in the USD file." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2096 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2156 msgid "" "Fixed the selection of material prim in the " ":class:`omni.isaac.lab.sim.spawners.materials.spawn_preview_surface` " @@ -3227,18 +3301,18 @@ msgid "" "which interfered with the selection of prims by the user." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2099 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2159 msgid "" "Updated :class:`omni.isaac.lab.sim.converters.MeshConverter` to use a " "different stage than the default stage for the conversion. This is to " "avoid the issue of the stage being closed when the conversion is done." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2104 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2164 msgid "0.9.26 (2023-10-31)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2109 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2169 msgid "" "Added the sensor implementation for " ":class:`omni.isaac.lab.sensors.FrameTransformer` class. Currently, it " @@ -3246,11 +3320,11 @@ msgid "" "articulation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2114 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2174 msgid "0.9.25 (2023-10-27)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2119 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2179 msgid "" "Added the :mod:`omni.isaac.lab.envs.ui` module to put all the UI-related " "classes in one place. This currently implements the " @@ -3259,7 +3333,7 @@ msgid "" "from these classes to create their own UI windows." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2122 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2182 msgid "" "Added the attribute " ":attr:`omni.isaac.lab.envs.BaseEnvCfg.ui_window_class_type` to specify " @@ -3267,11 +3341,11 @@ msgid "" "to specify their own UI window class to be used for the environment." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2128 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2188 msgid "0.9.24 (2023-10-27)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2133 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2193 msgid "" "Changed the behavior of setting up debug visualization for assets, " "sensors and command generators. Earlier it was raising an error if debug " @@ -3280,29 +3354,29 @@ msgid "" "if it is implemented." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2140 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2200 msgid "0.9.23 (2023-10-27)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2145 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2205 msgid "" "Fixed a typo in the :class:`AssetBase` and :class:`SensorBase` that " "effected the class destructor. Earlier, a tuple was being created in the " "constructor instead of the actual object." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2150 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2210 msgid "0.9.22 (2023-10-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2155 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2215 msgid "" "Added a :class:`omni.isaac.lab.command_generators.NullCommandGenerator` " "class for no command environments. This is easier to work with than " "having checks for :obj:`None` in the command generator." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2161 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2221 msgid "" "Moved the randomization manager to the " ":class:`omni.isaac.lab.envs.BaseEnv` class with the default settings to " @@ -3310,34 +3384,34 @@ msgid "" "assets." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2163 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2223 msgid "" "Moved command generator to the :class:`omni.isaac.lab.envs.RlEnv` class " "to have all task-specification related classes in the same place." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2168 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2228 msgid "0.9.21 (2023-10-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2173 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2233 msgid "" "Decreased the priority of callbacks in asset and sensor base classes. " "This may help in preventing crashes when warm starting the simulation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2175 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2235 msgid "" "Fixed no rendering mode when running the environment from the GUI. " "Earlier the function :meth:`SimulationContext.set_render_mode` was " "erroring out." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2180 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2240 msgid "0.9.20 (2023-10-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2185 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2245 msgid "" "Changed naming in " ":class:`omni.isaac.lab.sim.SimulationContext.RenderMode` to use " @@ -3345,70 +3419,70 @@ msgid "" "clarity." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2187 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2247 msgid "" "Changed :class:`omni.isaac.lab.sim.SimulationContext` to be capable of " "handling livestreaming and offscreen rendering." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2189 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2249 msgid "" "Changed :class:`omni.isaac.lab.app.AppLauncher` envvar " "``VIEWPORT_RECORD`` to the more descriptive ``OFFSCREEN_RENDER``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2194 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2254 msgid "0.9.19 (2023-10-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2199 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2259 msgid "" "Added Gym observation and action spaces for the " ":class:`omni.isaac.lab.envs.RLEnv` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2203 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2263 msgid "0.9.18 (2023-10-23)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2208 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2268 msgid "" "Created " ":class:`omni.isaac.lab.sim.converters.asset_converter.AssetConverter` to " "serve as a base class for all asset converters." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2210 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2270 msgid "" "Added :class:`omni.isaac.lab.sim.converters.mesh_converter.MeshConverter`" " to handle loading and conversion of mesh files (OBJ, STL and FBX) into " "USD format." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2212 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2272 msgid "" "Added script ``convert_mesh.py`` to ``source/tools`` to allow users to " "convert a mesh to USD via command line arguments." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2217 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2277 msgid "" "Renamed the submodule :mod:`omni.isaac.lab.sim.loaders` to " ":mod:`omni.isaac.lab.sim.converters` to be more general with the " "functionality of the module." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2219 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2279 msgid "" "Updated ``check_instanceable.py`` script to convert relative paths to " "absolute paths." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2223 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2283 msgid "0.9.17 (2023-10-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2228 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2288 msgid "" "Added setters and getters for term configurations in the " ":class:`RandomizationManager`, :class:`RewardManager` and " @@ -3416,105 +3490,105 @@ msgid "" "term configurations after the manager has been created." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2231 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2291 msgid "" "Added the method :meth:`compute_group` to the " ":class:`omni.isaac.lab.managers.ObservationManager` class to compute the " "observations for only a given group." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2233 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2293 msgid "" "Added the curriculum term for modifying reward weights after certain " "environment steps." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2237 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2297 msgid "0.9.16 (2023-10-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2242 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2302 msgid "" "Added support for keyword arguments for terms in the " ":class:`omni.isaac.lab.managers.ManagerBase`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2247 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2307 msgid "" "Fixed resetting of buffers in the :class:`TerminationManager` class. " "Earlier, the values were being set to ``0.0`` instead of ``False``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2252 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2312 msgid "0.9.15 (2023-10-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2257 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2317 msgid "" "Added base yaw heading and body acceleration into " ":class:`omni.isaac.lab.assets.RigidObjectData` class. These quantities " "are computed inside the :class:`RigidObject` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2263 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2323 msgid "" "Fixed the " ":meth:`omni.isaac.lab.assets.RigidObject.set_external_force_and_torque` " "method to correctly deal with the body indices." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2265 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2325 msgid "" "Fixed a bug in the :meth:`omni.isaac.lab.utils.math.wrap_to_pi` method to" " prevent self-assignment of the input tensor." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2270 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2330 msgid "0.9.14 (2023-10-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2275 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2335 msgid "" "Added 2-D drift (i.e. along x and y) to the " ":class:`omni.isaac.lab.sensors.RayCaster` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2276 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2336 msgid "" "Added flags to the :class:`omni.isaac.lab.sensors.ContactSensorCfg` to " "optionally obtain the sensor origin and air time information. Since these" " are not required by default, they are disabled by default." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2283 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2343 msgid "" "Fixed the handling of contact sensor history buffer in the " ":class:`omni.isaac.lab.sensors.ContactSensor` class. Earlier, the buffer " "was not being updated correctly." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2288 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2348 msgid "0.9.13 (2023-10-20)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2293 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2353 msgid "" "Fixed the issue with double :obj:`Ellipsis` when indexing tensors with " "multiple dimensions. The fix now uses :obj:`slice(None)` instead of " ":obj:`Ellipsis` to index the tensors." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2298 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2358 msgid "0.9.12 (2023-10-18)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2303 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2363 msgid "" "Fixed bugs in actuator model implementation for actuator nets. Earlier " "the DC motor clipping was not working." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2304 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2364 msgid "" "Fixed bug in applying actuator model in the " ":class:`omni.isaac.lab.asset.Articulation` class. The new implementation " @@ -3523,11 +3597,11 @@ msgid "" "operation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2310 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2370 msgid "0.9.11 (2023-10-17)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2315 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2375 msgid "" "Added the support for semantic tags into the " ":class:`omni.isaac.lab.sim.spawner.SpawnerCfg` class. This allows the " @@ -3535,17 +3609,17 @@ msgid "" "scene. It follows the same format as Omniverse Replicator." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2321 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2381 msgid "0.9.10 (2023-10-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2326 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2386 msgid "" "Added ``--livestream`` and ``--ros`` CLI args to " ":class:`omni.isaac.lab.app.AppLauncher` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2327 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2387 msgid "" "Added a static function " ":meth:`omni.isaac.lab.app.AppLauncher.add_app_launcher_args`, which " @@ -3553,7 +3627,7 @@ msgid "" "to the argument parser." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2333 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2393 msgid "" "Within :class:`omni.isaac.lab.app.AppLauncher`, removed " "``REMOTE_DEPLOYMENT`` env-var processing in the favor of ``HEADLESS`` and" @@ -3561,11 +3635,11 @@ msgid "" "the CLI args." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2339 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2399 msgid "0.9.9 (2023-10-12)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2344 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2404 msgid "" "Added the property " ":attr:`omni.isaac.lab.assets.Articulation.is_fixed_base` to the " @@ -3573,13 +3647,13 @@ msgid "" "floating." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2346 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2406 msgid "" "Added the task-space action term corresponding to the differential " "inverse-kinematics controller." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2351 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2411 msgid "" "Simplified the " ":class:`omni.isaac.lab.controllers.DifferentialIKController` to assume " @@ -3588,11 +3662,11 @@ msgid "" "complicated and error-prone." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2357 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2417 msgid "0.9.8 (2023-09-30)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2362 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2422 msgid "" "Fixed the boundedness of class objects that register callbacks into the " "simulator. These include devices, :class:`AssetBase`, :class:`SensorBase`" @@ -3600,11 +3674,11 @@ msgid "" "when the user deletes the object." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2368 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2428 msgid "0.9.7 (2023-09-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2373 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2433 msgid "" "Modified the :class:`omni.isaac.lab.markers.VisualizationMarkers` to use " "the :class:`omni.isaac.lab.sim.spawner.SpawnerCfg` class instead of their" @@ -3612,45 +3686,45 @@ msgid "" "to spawn assets in the scene." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2380 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2440 msgid "" "Added the method :meth:`copy` to configclass to allow copying of " "configuration objects." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2384 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2444 msgid "0.9.6 (2023-09-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2389 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2449 msgid "" "Changed class-level configuration classes to refer to class types using " "``class_type`` attribute instead of ``cls`` or ``cls_name``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2394 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2454 msgid "0.9.5 (2023-09-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2399 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:425 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2459 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:437 msgid "" "Added future import of ``annotations`` to have a consistent behavior " "across Python versions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2400 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:426 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2460 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:438 msgid "" "Removed the type-hinting from docstrings to simplify maintenance of the " "documentation. All type-hints are now in the code itself." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2405 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2465 msgid "0.9.4 (2023-08-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2410 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2470 msgid "" "Added :class:`omni.isaac.lab.scene.InteractiveScene`, as the central " "scene unit that contains all entities that are part of the simulation. " @@ -3659,7 +3733,7 @@ msgid "" "access them via their unique names." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2413 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2473 msgid "" "Added :mod:`omni.isaac.lab.envs` module that contains environment " "definitions that encapsulate the different general (scene, action " @@ -3667,7 +3741,7 @@ msgid "" "manager) managers." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2415 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2475 msgid "" "Added :class:`omni.isaac.lab.managers.SceneEntityCfg` to handle which " "scene elements are required by the manager's terms. This allows the " @@ -3675,25 +3749,25 @@ msgid "" "joint and body indices, and pass them to the term." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2418 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2478 msgid "" "Added :class:`omni.isaac.lab.sim.SimulationContext.RenderMode` to handle " "different rendering modes based on what the user wants to update " "(viewport, cameras, or UI elements)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2424 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2484 msgid "" "Fixed the :class:`omni.isaac.lab.command_generators.CommandGeneratorBase`" " to register a debug visualization callback similar to how sensors and " "robots handle visualization." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2429 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2489 msgid "0.9.3 (2023-08-23)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2434 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2494 msgid "" "Enabled the `faulthander " "`_ to catch " @@ -3701,13 +3775,13 @@ msgid "" ":class:`omni.isaac.lab.app.AppLauncher` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2440 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2500 msgid "" "Re-added the :mod:`omni.isaac.lab.utils.kit` to the ``compat`` directory " "and fixed all the references to it." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2441 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2501 msgid "" "Fixed the deletion of Replicator nodes for the " ":class:`omni.isaac.lab.sensors.Camera` class. Earlier, the Replicator " @@ -3716,35 +3790,35 @@ msgid "" "deleted." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2444 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2504 msgid "" "Fixed the :meth:`omni.isaac.lab.utils.math.convert_quat` to support both " "numpy and torch tensors." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2449 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2509 msgid "" "Renamed all the scripts inside the ``test`` directory to follow the " "convention:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2451 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2511 msgid "" "``test_.py``: Tests for the module ```` using " "unittest." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2452 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2512 msgid "" "``check_``: Check for the module ```` using " "python main function." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2456 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2516 msgid "0.9.2 (2023-08-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2461 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2521 msgid "" "Added the ability to color meshes in the " ":class:`omni.isaac.lab.terrain.TerrainGenerator` class. Currently, it " @@ -3752,41 +3826,41 @@ msgid "" "terrain height (``\"height\"``), and no coloring (``\"none\"``)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2468 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2528 msgid "" "Modified the :class:`omni.isaac.lab.terrain.TerrainImporter` class to " "configure visual and physics materials based on the configuration object." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2473 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2533 msgid "0.9.1 (2023-08-18)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2478 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2538 msgid "" "Introduced three different rotation conventions in the " ":class:`omni.isaac.lab.sensors.Camera` class. These conventions are:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2481 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2541 msgid "" "``opengl``: the camera is looking down the -Z axis with the +Y axis " "pointing up" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2482 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2542 msgid "" "``ros``: the camera is looking down the +Z axis with the +Y axis pointing" " down" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2483 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2543 msgid "" "``world``: the camera is looking along the +X axis with the -Z axis " "pointing down" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2485 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2545 msgid "" "These can be used to declare the camera offset in " ":class:`omni.isaac.lab.sensors.CameraCfg.OffsetCfg` class and in " @@ -3795,14 +3869,14 @@ msgid "" ":class:`omni.isaac.lab.sensors.CameraData` class for easy access." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2492 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2552 msgid "" "Adapted all the sensor classes to follow a structure similar to the " ":class:`omni.isaac.lab.assets.AssetBase`. Hence, the spawning and " "initialization of sensors manually by the users is avoided." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2494 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2554 msgid "" "Removed the :meth:`debug_vis` function since that this functionality is " "handled by a render callback automatically (based on the passed " @@ -3810,11 +3884,11 @@ msgid "" ":class:`omni.isaac.lab.sensors.SensorBaseCfg.debug_vis` flag)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2499 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2559 msgid "0.9.0 (2023-08-18)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2504 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2564 msgid "" "Introduces a new set of asset interfaces. These interfaces simplify the " "spawning of assets into the scene and initializing the physics handle by " @@ -3823,37 +3897,37 @@ msgid "" "calls." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2507 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2567 msgid "" "Added utility methods to :mod:`omni.isaac.lab.utils.string` module that " "resolve regex expressions based on passed list of target keys." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2513 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2573 msgid "" "Renamed all references of joints in an articulation from \"dof\" to " "\"joint\". This makes it consistent with the terminology used in " "robotics." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2519 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2579 msgid "" "Removed the previous modules for objects and robots. Instead the " ":class:`Articulation` and :class:`RigidObject` should be used." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2524 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2584 msgid "0.8.12 (2023-08-18)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2529 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2589 msgid "" "Added other properties provided by ``PhysicsScene`` to the " ":class:`omni.isaac.lab.sim.SimulationContext` class to allow setting CCD," " solver iterations, etc." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2531 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2591 msgid "" "Added commonly used functions to the :class:`SimulationContext` class " "itself to avoid having additional imports from Isaac Sim when doing " @@ -3861,65 +3935,65 @@ msgid "" "settings." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2537 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2597 msgid "" "Switched the notations of default buffer values in " ":class:`omni.isaac.lab.sim.PhysxCfg` from multiplication to scientific " "notation to avoid confusion with the values." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2542 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2602 msgid "0.8.11 (2023-08-18)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2547 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2607 msgid "" "Adds utility functions and configuration objects in the " ":mod:`omni.isaac.lab.sim.spawners` to create the following prims in the " "scene:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2550 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2610 msgid "" ":mod:`omni.isaac.lab.sim.spawners.from_file`: Create a prim from a " "USD/URDF file." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2551 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2611 msgid "" ":mod:`omni.isaac.lab.sim.spawners.shapes`: Create USDGeom prims for " "shapes (box, sphere, cylinder, capsule, etc.)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2552 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2612 msgid "" ":mod:`omni.isaac.lab.sim.spawners.materials`: Create a visual or physics " "material prim." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2553 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2613 msgid "" ":mod:`omni.isaac.lab.sim.spawners.lights`: Create a USDLux prim for " "different types of lights." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2554 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2614 msgid "" ":mod:`omni.isaac.lab.sim.spawners.sensors`: Create a USD prim for " "supported sensors." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2559 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2619 msgid "" "Modified the :class:`SimulationContext` class to take the default physics" " material using the material spawn configuration object." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2564 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2624 msgid "0.8.10 (2023-08-17)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2569 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2629 msgid "" "Added methods for defining different physics-based schemas in the " ":mod:`omni.isaac.lab.sim.schemas` module. These methods allow creating " @@ -3927,22 +4001,22 @@ msgid "" "properties based on the configuration object." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2575 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2635 msgid "0.8.9 (2023-08-09)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2580 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2640 msgid "" "Moved the :class:`omni.isaac.lab.asset_loader.UrdfLoader` class to the " ":mod:`omni.isaac.lab.sim.loaders` module to make it more accessible to " "the user." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2585 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2645 msgid "0.8.8 (2023-08-09)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2590 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2650 msgid "" "Added configuration classes and functions for setting different physics-" "based schemas in the :mod:`omni.isaac.lab.sim.schemas` module. These " @@ -3950,38 +4024,38 @@ msgid "" "configuration objects." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2596 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2656 msgid "0.8.7 (2023-08-03)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2601 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2661 msgid "" "Added support for `__post_init__ " "`_ in the :class:`omni.isaac.lab.utils.configclass` decorator." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2606 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2666 msgid "0.8.6 (2023-08-03)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2611 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2671 msgid "" "Added support for callable classes in the " ":class:`omni.isaac.lab.managers.ManagerBase`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2615 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2675 msgid "0.8.5 (2023-08-03)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2620 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2680 msgid "" "Fixed the :class:`omni.isaac.lab.markers.Visualizationmarkers` class so " "that the markers are not visible in camera rendering mode." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2625 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2685 msgid "" "Simplified the creation of the point instancer in the " ":class:`omni.isaac.lab.markers.Visualizationmarkers` class. It now " @@ -3989,11 +4063,11 @@ msgid "" "exists at the given path." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2630 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2690 msgid "0.8.4 (2023-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2635 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2695 msgid "" "Added the :class:`omni.isaac.lab.sim.SimulationContext` class to the " ":mod:`omni.isaac.lab.sim` module. This class inherits from the " @@ -4002,45 +4076,45 @@ msgid "" "object." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2641 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2701 msgid "0.8.3 (2023-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2646 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2706 msgid "" "Moved the :class:`ActuatorBase` class to the " ":mod:`omni.isaac.lab.actuators.actuator_base` module." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2647 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2707 msgid "" "Renamed the :mod:`omni.isaac.lab.actuators.actuator` module to " ":mod:`omni.isaac.lab.actuators.actuator_pd` to make it more explicit that" " it contains the PD actuator models." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2652 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2712 msgid "0.8.2 (2023-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2657 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2717 msgid "" "Cleaned up the :class:`omni.isaac.lab.terrain.TerrainImporter` class to " "take all the parameters from the configuration object. This makes it " "consistent with the other classes in the package." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2659 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2719 msgid "" "Moved the configuration classes for terrain generator and terrain " "importer into separate files to resolve circular dependency issues." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2664 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2724 msgid "0.8.1 (2023-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2669 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2729 msgid "" "Added a hack into :class:`omni.isaac.lab.app.AppLauncher` class to remove" " Isaac Lab packages from the path before launching the simulation " @@ -4048,32 +4122,32 @@ msgid "" "user launches the ``SimulationApp``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2675 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2735 msgid "" "Enabled necessary viewport extensions in the " ":class:`omni.isaac.lab.app.AppLauncher` class itself if " "``VIEWPORT_ENABLED`` flag is true." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2680 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2740 msgid "0.8.0 (2023-07-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2685 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2745 msgid "" "Added the :class:`ActionManager` class to the " ":mod:`omni.isaac.lab.managers` module to handle actions in the " "environment through action terms." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2687 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2747 msgid "" "Added contact force history to the " ":class:`omni.isaac.lab.sensors.ContactSensor` class. The history is " "stored in the ``net_forces_w_history`` attribute of the sensor data." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2693 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2753 msgid "" "Implemented lazy update of buffers in the " ":class:`omni.isaac.lab.sensors.SensorBase` class. This allows the user to" @@ -4082,24 +4156,24 @@ msgid "" " when a reset is called in the environment." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2700 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2760 msgid "" "Removed the support for different backends in the sensor class. We only " "use Pytorch as the backend now." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2701 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2761 msgid "" "Removed the concept of actuator groups. They are now handled by the " ":class:`omni.isaac.lab.managers.ActionManager` class. The actuator models" " are now directly handled by the robot class itself." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2706 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2766 msgid "0.7.4 (2023-07-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2711 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2771 msgid "" "Changed the behavior of the " ":class:`omni.isaac.lab.terrains.TerrainImporter` class. It now expects " @@ -4108,7 +4182,7 @@ msgid "" "to do an explicit call to import a terrain." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2718 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2778 msgid "" "Fixed setting of quaternion orientations inside the " ":class:`omni.isaac.lab.markers.Visualizationmarkers` class. Earlier, the " @@ -4116,11 +4190,11 @@ msgid "" "(``wxyz`` instead of ``xyzw``)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2723 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2783 msgid "0.7.3 (2023-07-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2728 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2788 msgid "" "Fixed the issue with multiple inheritance in the " ":class:`omni.isaac.lab.utils.configclass` decorator. Earlier, if the " @@ -4129,11 +4203,11 @@ msgid "" "classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2734 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2794 msgid "0.7.2 (2023-07-24)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2739 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2799 msgid "" "Added the method :meth:`replace` to the " ":class:`omni.isaac.lab.utils.configclass` decorator to allow creating a " @@ -4142,18 +4216,18 @@ msgid "" "`_." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2746 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2806 msgid "" "Fixed the handling of class types as member values in the " ":meth:`omni.isaac.lab.utils.configclass`. Earlier it was throwing an " "error since class types were skipped in the if-else block." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2751 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2811 msgid "0.7.1 (2023-07-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2756 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2816 msgid "" "Added the :class:`TerminationManager`, :class:`CurriculumManager`, and " ":class:`RandomizationManager` classes to the " @@ -4161,11 +4235,11 @@ msgid "" "and randomization respectively." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2761 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2821 msgid "0.7.0 (2023-07-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2766 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2826 msgid "" "Created a new :mod:`omni.isaac.lab.managers` module for all the managers " "related to the environment / scene. This includes the " @@ -4174,20 +4248,20 @@ msgid "" "previously in the :mod:`omni.isaac.lab.utils.mdp` module." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2769 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2829 msgid "" "Added the :class:`omni.isaac.lab.managers.ManagerBase` class to handle " "the creation of managers." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2770 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2830 msgid "" "Added configuration classes for :class:`ObservationTermCfg` and " ":class:`RewardTermCfg` to allow easy creation of observation and reward " "terms." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2776 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2836 msgid "" "Changed the behavior of :class:`ObservationManager` and " ":class:`RewardManager` classes to accept the key ``func`` in each " @@ -4196,23 +4270,23 @@ msgid "" "different environments." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2779 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2839 msgid "" "Moved the old managers to the :mod:`omni.isaac.lab.compat.utils.mdp` " "module." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2780 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2840 msgid "" "Modified the necessary scripts to use the " ":mod:`omni.isaac.lab.compat.utils.mdp` module." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2784 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2844 msgid "0.6.2 (2023-07-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2789 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2849 msgid "" "Added the :mod:`omni.isaac.lab.command_generators` to generate different " "commands based on the desired task. It allows the user to generate " @@ -4220,34 +4294,34 @@ msgid "" "write custom code for each task." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2795 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2855 msgid "0.6.1 (2023-07-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2800 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2860 msgid "" "Fixed the :meth:`omni.isaac.lab.utils.math.quat_apply_yaw` to compute the" " yaw quaternion correctly." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2805 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2865 msgid "" "Added functions to convert string and callable objects in " ":mod:`omni.isaac.lab.utils.string`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2809 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2869 msgid "0.6.0 (2023-07-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2814 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2874 msgid "" "Added the argument :attr:`sort_keys` to the " ":meth:`omni.isaac.lab.utils.io.yaml.dump_yaml` method to allow " "enabling/disabling of sorting of keys in the output yaml file." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2820 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2880 msgid "" "Fixed the ordering of terms in :mod:`omni.isaac.lab.utils.configclass` to" " be consistent in the order in which they are defined. Previously, the " @@ -4255,31 +4329,31 @@ msgid "" "order in which the parameters were defined." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2827 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2887 msgid "" "Changed the default value of the argument :attr:`sort_keys` in the " ":meth:`omni.isaac.lab.utils.io.yaml.dump_yaml` method to ``False``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2829 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2889 msgid "" "Moved the old config classes in :mod:`omni.isaac.lab.utils.configclass` " "to :mod:`omni.isaac.lab.compat.utils.configclass` so that users can still" " run their old code where alphabetical ordering was used." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2835 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2895 msgid "0.5.0 (2023-07-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2840 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2900 msgid "" "Added a generalized :class:`omni.isaac.lab.sensors.SensorBase` class that" " leverages the ideas of views to handle multiple sensors in a single " "class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2842 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2902 msgid "" "Added the classes :class:`omni.isaac.lab.sensors.RayCaster`, " ":class:`omni.isaac.lab.sensors.ContactSensor`, and " @@ -4287,53 +4361,53 @@ msgid "" "sensor data." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2848 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2908 msgid "" "Renamed the parameter ``sensor_tick`` to ``update_freq`` to make it more " "intuitive." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2849 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2909 msgid "" "Moved the old sensors in :mod:`omni.isaac.lab.sensors` to " ":mod:`omni.isaac.lab.compat.sensors`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2850 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2910 msgid "" "Modified the standalone scripts to use the " ":mod:`omni.isaac.lab.compat.sensors` module." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2854 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2914 msgid "0.4.4 (2023-07-05)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2859 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2919 msgid "" "Fixed the :meth:`omni.isaac.lab.terrains.trimesh.utils.make_plane` method" " to handle the case when the plane origin does not need to be centered." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2861 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2921 msgid "" "Added the :attr:`omni.isaac.lab.terrains.TerrainGeneratorCfg.seed` to " "make generation of terrains reproducible. The default value is ``None`` " "which means that the seed is not set." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2867 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2927 msgid "" "Changed the saving of ``origins`` in " ":class:`omni.isaac.lab.terrains.TerrainGenerator` class to be in CSV " "format instead of NPY format." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2872 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2932 msgid "0.4.3 (2023-06-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2877 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2937 msgid "" "Added the :class:`omni.isaac.lab.markers.PointInstancerMarker` class that" " wraps around `UsdGeom.PointInstancer " @@ -4341,34 +4415,34 @@ msgid "" " to directly work with torch and numpy arrays." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2884 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2944 msgid "" "Moved the old markers in :mod:`omni.isaac.lab.markers` to " ":mod:`omni.isaac.lab.compat.markers`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2885 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2945 msgid "" "Modified the standalone scripts to use the " ":mod:`omni.isaac.lab.compat.markers` module." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2889 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2949 msgid "0.4.2 (2023-06-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2894 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2954 msgid "" "Added the sub-module :mod:`omni.isaac.lab.terrains` to allow procedural " "generation of terrains and supporting importing of terrains from " "different sources (meshes, usd files or default ground plane)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2899 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2959 msgid "0.4.1 (2023-06-27)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2901 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2961 msgid "" "Added the :class:`omni.isaac.lab.app.AppLauncher` class to allow " "controlled instantiation of the `SimulationApp " @@ -4376,48 +4450,48 @@ msgid "" " and extension loading for remote deployment and ROS bridges." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2908 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2968 msgid "" "Modified all standalone scripts to use the " ":class:`omni.isaac.lab.app.AppLauncher` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2912 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2972 msgid "0.4.0 (2023-05-27)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2917 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2977 msgid "" "Added a helper class :class:`omni.isaac.lab.asset_loader.UrdfLoader` that" " converts a URDF file to instanceable USD file based on the input " "configuration object." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2922 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2982 msgid "0.3.2 (2023-04-27)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2927 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2987 msgid "" "Added safe-printing of functions while using the " ":meth:`omni.isaac.lab.utils.dict.print_dict` function." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2931 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2991 msgid "0.3.1 (2023-04-23)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2936 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2996 msgid "" "Added a modified version of ``lula_franka_gen.urdf`` which includes an " "end-effector frame." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2937 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2997 msgid "Added a standalone script ``play_rmpflow.py`` to show RMPFlow controller." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2942 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3002 msgid "" "Fixed the splitting of commands in the :meth:`ActuatorGroup.compute` " "method. Earlier it was reshaping the commands to the shape " @@ -4425,210 +4499,210 @@ msgid "" "split incorrectly." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2944 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3004 msgid "" "Fixed the processing of actuator command in the " ":meth:`RobotBase._process_actuators_cfg` to deal with multiple command " "types when using \"implicit\" actuator group." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2948 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3008 msgid "0.3.0 (2023-04-20)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2953 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3013 msgid "Added the destructor to the keyboard devices to unsubscribe from carb." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2958 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3018 msgid "" "Added the :class:`Se2Gamepad` and :class:`Se3Gamepad` for gamepad " "teleoperation support." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2962 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3022 msgid "0.2.8 (2023-04-10)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2967 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3027 msgid "" "Fixed bugs in :meth:`axis_angle_from_quat` in the " "``omni.isaac.lab.utils.math`` to handle quaternion with negative w " "component." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2968 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3028 msgid "" "Fixed bugs in :meth:`subtract_frame_transforms` in the " "``omni.isaac.lab.utils.math`` by adding the missing final rotation." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2972 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3032 msgid "0.2.7 (2023-04-07)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2977 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3037 msgid "" "Fixed repetition in applying mimic multiplier for \"p_abs\" in the " ":class:`GripperActuatorGroup` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2978 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3038 msgid "" "Fixed bugs in :meth:`reset_buffers` in the :class:`RobotBase` and " ":class:`LeggedRobot` classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2981 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3041 msgid "0.2.6 (2023-03-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2986 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3046 msgid "" "Added the :class:`CollisionPropertiesCfg` to rigid/articulated object and" " robot base classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2987 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3047 msgid "" "Added the :class:`PhysicsMaterialCfg` to the :class:`SingleArm` class for" " tool sites." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2992 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3052 msgid "" "Changed the default control mode of the :obj:`PANDA_HAND_MIMIC_GROUP_CFG`" " to be from ``\"v_abs\"`` to ``\"p_abs\"``. Using velocity control for " "the mimic group can cause the hand to move in a jerky manner." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:2997 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3057 msgid "0.2.5 (2023-03-08)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3002 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3062 msgid "" "Fixed the indices used for the Jacobian and dynamics quantities in the " ":class:`MobileManipulator` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3006 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3066 msgid "0.2.4 (2023-03-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3011 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3071 msgid "" "Added :meth:`apply_nested_physics_material` to the " "``omni.isaac.lab.utils.kit``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3012 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3072 msgid "" "Added the :meth:`sample_cylinder` to sample points from a cylinder's " "surface." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3013 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3073 msgid "" "Added documentation about the issue in using instanceable asset as " "markers." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3018 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3078 msgid "" "Simplified the physics material application in the rigid object and " "legged robot classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3023 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3083 msgid "" "Removed the ``geom_prim_rel_path`` argument in the " ":class:`RigidObjectCfg.MetaInfoCfg` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3027 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3087 msgid "0.2.3 (2023-02-24)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3032 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3092 msgid "" "Fixed the end-effector body index used for getting the Jacobian in the " ":class:`SingleArm` and :class:`MobileManipulator` classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3036 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3096 msgid "0.2.2 (2023-01-27)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3041 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3101 msgid "" "Fixed the :meth:`set_world_pose_ros` and :meth:`set_world_pose_from_view`" " in the :class:`Camera` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3046 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3106 msgid "" "Removed the :meth:`set_world_pose_from_ypr` method from the " ":class:`Camera` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3050 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3110 msgid "0.2.1 (2023-01-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3055 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3115 msgid "" "Fixed the :class:`Camera` class to support different fisheye projection " "types." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3059 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:573 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3119 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:585 msgid "0.2.0 (2023-01-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3064 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3124 msgid "Added support for warp backend in camera utilities." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3065 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3125 msgid "" "Extended the ``play_camera.py`` with ``--gpu`` flag to use GPU replicator" " backend." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3068 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3128 msgid "0.1.1 (2023-01-24)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3073 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3133 msgid "" "Fixed setting of physics material on the ground plane when using " ":meth:`omni.isaac.lab.utils.kit.create_ground_plane` function." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3077 -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:600 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3137 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:612 msgid "0.1.0 (2023-01-17)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3082 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3142 msgid "Initial release of the extension with experimental API." msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3083 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3143 msgid "Available robot configurations:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3085 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3145 msgid "**Quadrupeds:** Unitree A1, ANYmal B, ANYmal C" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3086 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3146 msgid "**Single-arm manipulators:** Franka Emika arm, UR5" msgstr "" -#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3087 +#: ../../../source/extensions/omni.isaac.lab/docs/CHANGELOG.rst:3147 msgid "**Mobile manipulators:** Clearpath Ridgeback with Franka Emika arm or UR5" msgstr "" @@ -4685,50 +4759,65 @@ msgid "Extension containing the environments built using Isaac Lab." msgstr "" #: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:2 -msgid "0.10.12 (2024-10-28)" +msgid "0.10.13 (2024-10-30)" msgstr "" #: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:7 msgid "" +"Defined the Gymnasium task entry points with configuration strings " +"instead of class types. This avoids unnecessary imports and improves the " +"load types." +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:9 +msgid "Blacklisted ``mdp`` directories during the recursive module search." +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:13 +msgid "0.10.12 (2024-10-28)" +msgstr "" + +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:18 +msgid "" "Changed manager-based vision cartpole environment names from Isaac-" "Cartpole-RGB-Camera-v0 and Isaac-Cartpole-Depth-Camera-v0 to Isaac-" "Cartpole-RGB-v0 and Isaac-Cartpole-Depth-v0" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:11 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:23 msgid "0.10.11 (2024-10-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:16 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:28 msgid "Added feature extracted observation cartpole examples." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:19 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:31 msgid "0.10.10 (2024-10-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:24 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:36 msgid "" "Fixed issues with defining Gymnasium spaces in Direct workflows due to " "Hydra/OmegaConf limitations with non-primitive types." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:28 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:40 msgid "0.10.9 (2024-10-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:33 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:45 msgid "" "Sets curriculum and commands to None in manager-based environment " "configurations when not needed. Earlier, this was done by making an empty" " configuration object, which is now unnecessary." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:38 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:50 msgid "0.10.8 (2024-10-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:43 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:55 msgid "" "Fixed the wrong selection of body id's in the " ":meth:`omni.isaac.lab_tasks.manager_based.locomotion.velocity.mdp.rewards.feet_slide`" @@ -4736,11 +4825,11 @@ msgid "" "bodies." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:48 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:60 msgid "0.10.7 (2024-10-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:53 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:65 msgid "" "Replace deprecated :attr:`num_observations`, :attr:`num_actions` and " ":attr:`num_states` in single-agent direct tasks by " @@ -4748,7 +4837,7 @@ msgid "" "respectively." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:55 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:67 msgid "" "Replace deprecated :attr:`num_observations`, :attr:`num_actions` and " ":attr:`num_states` in multi-agent direct tasks by " @@ -4756,71 +4845,71 @@ msgid "" " respectively." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:60 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:72 msgid "0.10.6 (2024-09-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:65 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:77 msgid "" "Added ``Isaac-Cartpole-RGB-Camera-v0`` and ``Isaac-Cartpole-Depth-" "Camera-v0`` manager based camera cartpole environments." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:70 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:82 msgid "0.10.5 (2024-09-11)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:75 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:87 msgid "" "Updated the skrl RL library integration to the latest release " "(skrl-v1.3.0)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:79 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:91 msgid "0.10.4 (2024-09-10)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:84 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:96 msgid "" "Added ``Isaac-Repose-Cube-Shadow-Vision-Direct-v0`` environment with " "heterogeneous proprioception and vision observations." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:88 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:100 msgid "0.10.3 (2024-09-05)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:93 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:105 msgid "" "Added environment config flag ``rerender_on_reset`` to allow updating " "sensor data after a reset." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:97 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:109 msgid "0.10.2 (2024-08-23)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:102 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:114 msgid "Added ``Isaac-Shadow-Hand-Over-Direct-v0`` multi-agent environment" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:106 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:118 msgid "0.10.1 (2024-08-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:111 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:123 msgid "Added ``Isaac-Cart-Double-Pendulum-Direct-v0`` multi-agent environment" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:116 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:128 msgid "Update skrl wrapper to support multi-agent environments." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:120 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:132 msgid "0.10.0 (2024-08-14)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:125 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:137 msgid "" "Added support for the Hydra configuration system to all the train " "scripts. As a result, parameters of the environment and the agent can be " @@ -4828,11 +4917,11 @@ msgid "" "``env.actions.joint_effort.scale=10``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:130 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:142 msgid "0.9.0 (2024-08-05)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:135 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:147 msgid "" "Replaced the command line input ``--cpu`` with ``--device`` in the train " "and play scripts. Running on cpu is supported by passing ``--device " @@ -4841,37 +4930,37 @@ msgid "" "for example ``--device cuda:0``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:141 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:153 msgid "0.8.2 (2024-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:146 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:158 msgid "Added ``Isaac-Repose-Cube-Allegro-Direct-v0`` environment" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:151 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:163 msgid "" "Renamed ``Isaac-Shadow-Hand-Direct-v0`` environments to ``Isaac-Repose-" "Cube-Shadow-Direct-v0``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:152 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:164 msgid "" "Renamed ``Isaac-Shadow-Hand-OpenAI-FF-Direct-v0`` environments to " "``Isaac-Repose-Cube-Shadow-OpenAI-FF-Direct-v0``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:153 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:165 msgid "" "Renamed ``Isaac-Shadow-Hand-OpenAI-LSTM-Direct-v0`` environments to " "``Isaac-Repose-Cube-Shadow-OpenAI-LSTM-Direct-v0``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:157 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:169 msgid "0.8.1 (2024-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:162 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:174 msgid "" "Renamed the folder names for Unitree robots in the manager-based " "locomotion tasks. Earlier, there was an inconsistency in the folder names" @@ -4879,11 +4968,11 @@ msgid "" "folders have the prefix." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:167 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:179 msgid "0.8.0 (2024-07-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:172 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:184 msgid "" "Renamed the action term names inside the manager-based lift-manipulation " "task. Earlier, they were called ``body_joint_pos`` and " @@ -4891,19 +4980,19 @@ msgid "" "``gripper_action``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:177 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:189 msgid "0.7.10 (2024-07-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:182 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:194 msgid "Extended skrl wrapper to support training/evaluation using JAX." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:186 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:198 msgid "0.7.9 (2024-07-01)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:191 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:203 msgid "" "Fixed the action space check in the Stable-Baselines3 wrapper. Earlier, " "the wrapper checked the action space via " @@ -4911,37 +5000,37 @@ msgid "" "value instead of a string." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:197 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:209 msgid "0.7.8 (2024-06-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:202 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:214 msgid "Updated the skrl RL library integration to the latest release (>= 1.2.0)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:206 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:218 msgid "0.7.7 (2024-06-14)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:211 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:223 msgid "" "Updated the tasks to use the renamed attribute " ":attr:`omni.isaac.lab.sim.SimulationCfg.render_interval`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:215 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:227 msgid "0.7.6 (2024-06-13)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:220 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:232 msgid "Added option to save images for Cartpole Camera environment." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:224 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:236 msgid "0.7.5 (2024-05-31)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:229 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:241 msgid "" "Added exporting of empirical normalization layer to ONNX and JIT when " "exporting the model using " @@ -4951,60 +5040,60 @@ msgid "" " inference." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:236 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:248 msgid "0.7.5 (2024-05-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:241 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:253 msgid "" "Added a new environment ``Isaac-Navigation-Flat-Anymal-C-v0`` to navigate" " towards a target position on flat terrain." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:245 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:257 msgid "0.7.4 (2024-05-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:250 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:262 msgid "Made default device for RSL RL and SB3 configs to \"cuda:0\"." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:253 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:265 msgid "0.7.3 (2024-05-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:258 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:270 msgid "" "Introduced ``--max_iterations`` argument to training scripts for " "specifying number of training iterations." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:261 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:273 msgid "0.7.2 (2024-05-13)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:266 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:278 msgid "" "Added Shadow Hand environments: ``Isaac-Shadow-Hand-Direct-v0``, ``Isaac-" "Shadow-Hand-OpenAI-FF-Direct-v0``, and ``Isaac-Shadow-Hand-OpenAI-LSTM-" "Direct-v0``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:271 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:283 msgid "0.7.1 (2024-05-09)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:276 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:288 msgid "" "Added the skrl agent configurations for the config and direct workflow " "tasks" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:280 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:292 msgid "0.7.0 (2024-05-07)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:285 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:297 msgid "" "Renamed all references of ``BaseEnv``, ``RLTaskEnv``, and ``OIGEEnv`` to " ":class:`omni.isaac.lab.envs.ManagerBasedEnv`, " @@ -5012,11 +5101,11 @@ msgid "" ":class:`omni.isaac.lab.envs.DirectRLEnv` respectively." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:288 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:300 msgid "Split environments into ``manager_based`` and ``direct`` folders." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:293 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:305 msgid "" "Added direct workflow environments: * ``Isaac-Cartpole-Direct-v0``, " "``Isaac-Cartpole-Camera-Direct-v0``, ``Isaac-Ant-Direct-v0``, ``Isaac-" @@ -5025,64 +5114,64 @@ msgid "" "Direct-v0``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:299 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:311 msgid "0.6.1 (2024-04-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:304 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:316 msgid "" "Added a new environment ``Isaac-Repose-Cube-Allegro-v0`` and ``Isaac-" "Repose-Allegro-Cube-NoVelObs-v0`` for the Allegro hand to reorient a " "cube. It is based on the IsaacGymEnvs Allegro hand environment." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:309 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:321 msgid "0.6.0 (2024-03-10)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:314 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:326 msgid "" "Added a new environment ``Isaac-Open-Drawer-Franka-v0`` for the Franka " "arm to open a drawer. It is based on the IsaacGymEnvs cabinet " "environment." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:320 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:332 msgid "" "Fixed logging of extra information for RL-Games wrapper. It expected the " "extra information to be under the key ``\"episode\"``, but Isaac Lab used" " the key ``\"log\"``. The wrapper now remaps the key to ``\"episode\"``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:325 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:337 msgid "0.5.7 (2024-02-28)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:330 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:342 msgid "" "Updated the RL wrapper for the skrl library to the latest release (>= " "1.1.0)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:334 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:346 msgid "0.5.6 (2024-02-21)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:339 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:351 msgid "" "Fixed the configuration parsing to support a pre-initialized " "configuration object." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:343 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:355 msgid "0.5.5 (2024-02-05)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:354 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:366 msgid "0.5.4 (2024-02-06)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:359 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:371 msgid "" "Added a check for the flag " ":attr:`omni.isaac.lab.envs.ManagerBasedRLEnvCfg.is_finite_horizon` in the" @@ -5092,11 +5181,11 @@ msgid "" "length was reached." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:366 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:378 msgid "0.5.3 (2023-11-16)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:371 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:383 msgid "" "Added raising of error in the " ":meth:`omni.isaac.lab_tasks.utils.importer.import_all` method to make " @@ -5104,27 +5193,27 @@ msgid "" "caught and ignored." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:376 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:388 msgid "0.5.2 (2023-11-08)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:381 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:393 msgid "" "Fixed the RL wrappers for Stable-Baselines3 and RL-Games. It now works " "with their most recent versions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:382 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:394 msgid "" "Fixed the :meth:`get_checkpoint_path` to allow any in-between sub-folders" " between the run directory and the checkpoint directory." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:387 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:399 msgid "0.5.1 (2023-11-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:392 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:404 msgid "" "Fixed the wrappers to different learning frameworks to use the new " ":class:`omni.isaac.lab_tasks.ManagerBasedRLEnv` class. The " @@ -5132,13 +5221,13 @@ msgid "" " class (Gym 0.29.0)." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:394 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:406 msgid "" "Fixed the registration of tasks in the Gym registry based on Gym 0.29.0 " "API." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:399 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:411 msgid "" "Removed the inheritance of all the RL-framework specific wrappers from " "the :class:`gymnasium.Wrapper` class. This is because the wrappers don't " @@ -5146,32 +5235,32 @@ msgid "" "from their respective RL-framework specific base classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:405 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:417 msgid "0.5.0 (2023-10-30)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:410 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:422 msgid "" "Changed the way agent configs are handled for environments and learning " "agents. Switched from yaml to configclasses." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:415 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:427 msgid "" "Fixed the way package import automation is handled in the " ":mod:`omni.isaac.lab_tasks` module. Earlier it was not skipping the " "blacklisted packages properly." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:420 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:432 msgid "0.4.3 (2023-09-25)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:431 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:443 msgid "0.4.2 (2023-08-29)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:436 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:448 msgid "" "Moved the base environment definition to the " ":class:`omni.isaac.lab.envs.RLEnv` class. The :class:`RLEnv` contains RL-" @@ -5182,84 +5271,84 @@ msgid "" "``gym.Env`` classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:444 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:456 msgid "" "Adapted the wrappers to use the new :class:`omni.isaac.lab.envs.RLEnv` " "class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:448 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:460 msgid "0.4.1 (2023-08-02)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:453 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:465 msgid "" "Adapted the base :class:`IsaacEnv` class to use the " ":class:`SimulationContext` class from the :mod:`omni.isaac.lab.sim` " "module. This simplifies setting of simulation parameters." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:458 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:470 msgid "0.4.0 (2023-07-26)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:463 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:475 msgid "" "Removed the resetting of environment indices in the step call of the " ":class:`IsaacEnv` class. This must be handled in the :math:`_step_impl`` " "function by the inherited classes." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:465 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:477 msgid "Adapted the wrapper for RSL-RL library its new API." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:470 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:482 msgid "" "Added handling of no checkpoint available error in the " ":meth:`get_checkpoint_path`." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:471 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:483 msgid "Fixed the locomotion environment for rough terrain locomotion training." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:475 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:487 msgid "0.3.2 (2023-07-22)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:480 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:492 msgid "" "Added a UI to the :class:`IsaacEnv` class to enable/disable rendering of " "the viewport when not running in headless mode." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:486 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:498 msgid "" "Fixed the the issue with environment returning transition tuples even " "when the simulation is paused." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:487 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:499 msgid "Fixed the shutdown of the simulation when the environment is closed." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:491 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:503 msgid "0.3.1 (2023-06-23)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:496 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:508 msgid "" "Changed the argument ``headless`` in :class:`IsaacEnv` class to " "``render``, in order to cause less confusion about rendering and " "headless-ness, i.e. that you can render while headless." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:501 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:513 msgid "0.3.0 (2023-04-14)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:506 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:518 msgid "" "Added a new flag ``viewport`` to the :class:`IsaacEnv` class to " "enable/disable rendering of the viewport. If the flag is set to ``True``," @@ -5267,7 +5356,7 @@ msgid "" "background." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:508 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:520 msgid "" "Updated the training scripts in the ``source/standalone/workflows`` " "directory to use the new flag ``viewport``. If the CLI argument " @@ -5275,172 +5364,172 @@ msgid "" "directory using the :class:`gym.wrappers.RecordVideo` wrapper." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:515 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:527 msgid "" "The :class:`IsaacEnv` class supports different rendering mode as " "referenced in OpenAI Gym's ``render`` method. These modes are:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:518 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:530 msgid "" "``rgb_array``: Renders the environment in the background and returns the " "rendered image as a numpy array." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:519 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:531 msgid "" "``human``: Renders the environment in the background and displays the " "rendered image in a window." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:521 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:533 msgid "" "Changed the constructor in the classes inheriting from :class:`IsaacEnv` " "to pass all the keyword arguments to the constructor of :class:`IsaacEnv`" " class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:527 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:539 msgid "" "Clarified the documentation of ``headless`` flag in the :class:`IsaacEnv`" " class. It refers to whether or not to render at every sim step, not " "whether to render the viewport or not." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:529 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:541 msgid "Fixed the unit tests for running random agent on included environments." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:532 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:544 msgid "0.2.3 (2023-03-06)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:537 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:549 msgid "" "Tuned the observations and rewards for ``Isaac-Lift-Franka-v0`` " "environment." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:540 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:552 msgid "0.2.2 (2023-03-04)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:545 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:557 msgid "" "Fixed the issue with rigid object not working in the ``Isaac-Lift-" "Franka-v0`` environment." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:548 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:560 msgid "0.2.1 (2023-03-01)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:553 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:565 msgid "" "Added a flag ``disable_contact_processing`` to the :class:`SimCfg` class " "to handle contact processing effectively when using TensorAPIs for " "contact reporting." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:555 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:567 msgid "" "Added verbosity flag to :meth:`export_policy_as_onnx` to print model " "summary." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:560 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:572 msgid "Clarified the documentation of flags in the :class:`SimCfg` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:561 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:573 msgid "" "Added enabling of ``omni.kit.viewport`` and ``omni.replicator.isaac`` " "extensions dynamically to maintain order in the startup of extensions." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:563 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:575 msgid "" "Corrected the experiment names in the configuration files for training " "environments with ``rsl_rl``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:568 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:580 msgid "" "Changed the default value of ``enable_scene_query_support`` in " ":class:`SimCfg` class to False. The flag is overridden to True inside " ":class:`IsaacEnv` class when running the simulation in non-headless mode." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:578 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:590 msgid "Added environment wrapper and sequential trainer for the skrl RL library" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:579 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:591 msgid "Added training/evaluation configuration files for the skrl RL library" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:582 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:594 msgid "0.1.2 (2023-01-19)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:587 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:599 msgid "Added the flag ``replicate_physics`` to the :class:`SimCfg` class." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:588 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:600 msgid "" "Increased the default value of ``gpu_found_lost_pairs_capacity`` in " ":class:`PhysxCfg` class" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:591 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:603 msgid "0.1.1 (2023-01-18)" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:596 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:608 msgid "" "Fixed a bug in ``Isaac-Velocity-Anymal-C-v0`` where the domain " "randomization is not applicable if cloning the environments with " "``replicate_physics=True``." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:605 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:617 msgid "Initial release of the extension." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:606 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:618 msgid "Includes the following environments:" msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:608 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:620 msgid "" "``Isaac-Cartpole-v0``: A cartpole environment with a continuous action " "space." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:609 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:621 msgid "``Isaac-Ant-v0``: A 3D ant environment with a continuous action space." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:610 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:622 msgid "" "``Isaac-Humanoid-v0``: A 3D humanoid environment with a continuous action" " space." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:611 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:623 msgid "" "``Isaac-Reach-Franka-v0``: A end-effector pose tracking task for the " "Franka arm." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:612 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:624 msgid "" "``Isaac-Lift-Franka-v0``: A 3D object lift and reposing task for the " "Franka arm." msgstr "" -#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:613 +#: ../../../source/extensions/omni.isaac.lab_tasks/docs/CHANGELOG.rst:625 msgid "" "``Isaac-Velocity-Anymal-C-v0``: An SE(2) velocity tracking task for " "legged robot on flat terrain." diff --git a/docs/locale/zh_CN/LC_MESSAGES/source/refs/reference_architecture/index.po b/docs/locale/zh_CN/LC_MESSAGES/source/refs/reference_architecture/index.po new file mode 100644 index 0000000000..75812f6347 --- /dev/null +++ b/docs/locale/zh_CN/LC_MESSAGES/source/refs/reference_architecture/index.po @@ -0,0 +1,807 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) 2022-2024, The Isaac Lab Project Developers. +# This file is distributed under the same license as the Isaac Lab package. +# FIRST AUTHOR , 2024. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: Isaac Lab 1.2.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2024-11-06 14:26+0800\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: Ziqi Fan \n" +"Language-Team: zh_CN \n" +"Language: zh_CN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"Generated-By: Babel 2.15.0\n" + +#: ../../source/refs/reference_architecture/index.rst:2 +msgid "Reference Architecture" +msgstr "参考架构" + +#: ../../source/refs/reference_architecture/index.rst:4 +msgid "" +"This document presents an overview of the end-to-end robot learning process " +"with Isaac Lab and Isaac Sim. This is demonstrated using a reference " +"architecture that highlights the major building blocks for training and " +"deployment workflows. It provides a comprehensive, user-friendly guide on " +"the entire process of developing applications from training to deploying the" +" trained model in the real world, including links to demos, working " +"examples, and documentation." +msgstr "" +"本文档介绍了使用 Isaac Lab 和 Isaac Sim " +"的端到端机器人学习过程概述。通过使用一个参考架构,展示了训练和部署工作流的主要构建模块。它提供了一个全面、用户友好的指南,涵盖了从训练到将训练好的模型部署到现实世界的整个应用开发过程,包括演示链接、工作示例和文档。" + +#: ../../source/refs/reference_architecture/index.rst:11 +msgid "Who is this document for?" +msgstr "这个文档适用于谁?" + +#: ../../source/refs/reference_architecture/index.rst:13 +msgid "" +"This document is designed to assist robotics developers and researchers " +"working with NVIDIA Isaac Lab in the robot learning field, including those " +"at research labs, Original Equipment Manufacturers (OEM), Solutions " +"Providers, Solutions Integrators (SI), and independent software vendors " +"(ISV). It offers guidance on utilizing Isaac Lab’s robot training framework " +"and workflows as a foundational starting point for environment " +"configuration, task design, and policy training and testing." +msgstr "" +"本文档旨在帮助在机器人学习领域使用 NVIDIA Isaac Lab " +"的机器人开发者和研究人员,包括研究实验室、原始设备制造商(OEM)、解决方案提供商、解决方案集成商(SI)以及独立软件供应商(ISV)。它为使用 " +"Isaac Lab 的机器人训练框架和工作流提供指导,作为环境配置、任务设计和策略训练与测试的基础起点。" + +#: ../../source/refs/reference_architecture/index.rst:-1 +msgid "Isaac Lab Reference Architecture" +msgstr "Isaac Lab 参考架构" + +#: ../../source/refs/reference_architecture/index.rst:34 +msgid "" +"The reference architecture for Isaac Lab comprises the following components:" +msgstr "Isaac Lab 的参考架构包括以下组件:" + +#: ../../source/refs/reference_architecture/index.rst:36 +msgid ":ref:`Asset Input`" +msgstr ":ref:`Asset Input`" + +#: ../../source/refs/reference_architecture/index.rst:37 +msgid ":ref:`Configuration - Assets & Scene`" +msgstr ":ref:`Configuration - Assets & Scene`" + +#: ../../source/refs/reference_architecture/index.rst:38 +msgid ":ref:`Robot Learning Task Design`" +msgstr ":ref:`Robot Learning Task Design`" + +#: ../../source/refs/reference_architecture/index.rst:39 +msgid ":ref:`Register with Gymnasium`" +msgstr ":ref:`Register with Gymnasium`" + +#: ../../source/refs/reference_architecture/index.rst:40 +msgid ":ref:`Environment Wrapping`" +msgstr ":ref:`Environment Wrapping`" + +#: ../../source/refs/reference_architecture/index.rst:41 +msgid ":ref:`Run Training`" +msgstr ":ref:`Run Training`" + +#: ../../source/refs/reference_architecture/index.rst:42 +msgid ":ref:`Run Testing`" +msgstr ":ref:`Run Testing`" + +#: ../../source/refs/reference_architecture/index.rst:48 +msgid "Components" +msgstr "组件" + +#: ../../source/refs/reference_architecture/index.rst:49 +msgid "" +"In this section, we will briefly discuss the individual blocks for creating " +"a sample reference application in Isaac Lab." +msgstr "在本节中,我们将简要讨论为在 Isaac Lab 中创建示例参考应用程序的各个模块。" + +#: ../../source/refs/reference_architecture/index.rst:56 +msgid "Component 1 - Asset Input" +msgstr "组件 1 - 资产输入" + +#: ../../source/refs/reference_architecture/index.rst:57 +msgid "" +"Isaac Lab accepts URDF, MJCF XML or USD files for the assets. The first step" +" to training using Isaac Lab is to have the USD file of your asset and the " +"USD or URDF file of your robot. This can be achieved in the following ways:" +msgstr "" +"Isaac Lab 支持 URDF、MJCF XML 或 USD 文件作为资产。使用 Isaac Lab 进行训练的第一步是拥有资产的 USD " +"文件以及机器人的 USD 或 URDF 文件。可以通过以下方式实现:" + +#: ../../source/refs/reference_architecture/index.rst:62 +msgid "Design your assets or robot in Isaac Sim and export the USD file." +msgstr "在 Isaac Sim 中设计资产或机器人并导出 USD 文件。" + +#: ../../source/refs/reference_architecture/index.rst:64 +msgid "" +"Design your assets or robot in any software of your choice and export it to " +"USD using Isaac Sim converters. Isaac Sim supports the different " +"converters/importers to USD such as the `CAD Converter`_, `URDF Importer`_, " +"`MJCF Importer`_, `Onshape Importer`_, etc. More details are found in the " +"`Importing Assets section`_ in the `Isaac Sim Reference Architecture`_." +msgstr "" +"在任何您选择的软件中设计资产或机器人,并使用 Isaac Sim 转换器导出为 USD。Isaac Sim 支持不同的转换器/导入器,例如 `CAD " +"Converter`_ 、 `URDF Importer`_ 、 `MJCF Importer`_ 、 `Onshape Importer`_ " +"等。更多细节请参见 `Importing Assets section`_ 和 `Isaac Sim Reference Architecture`_ " +"中的相关内容。" + +#: ../../source/refs/reference_architecture/index.rst:66 +msgid "" +"If you already have the URDF or MJCF file of your robot, you do not need to " +"convert to USD as Isaac Lab takes URDF and MJCF XML." +msgstr "" +"如果您已经有了机器人 (URDF 或 MJCF) 文件,则不需要转换为 USD,因为 Isaac Lab 支持 URDF 和 MJCF XML 格式。" + +#: ../../source/refs/reference_architecture/index.rst:72 +msgid "Component 2 - Configuration (Assets and Scene)" +msgstr "组件 2 - 配置(资产与场景)" + +#: ../../source/refs/reference_architecture/index.rst:75 +msgid "Asset Configuration" +msgstr "资产配置" + +#: ../../source/refs/reference_architecture/index.rst:77 +msgid "" +"Given that you have the asset file for your robot and other assets such as " +"environment objects based on the task, the next step is to import them into " +"Isaac Lab. Isaac Lab uses asset configuration classes to spawn various " +"objects (or prims) into the scene using Python. The first step is to write a" +" configuration class to define the properties for the assets needed to " +"complete the task. For example, a simple go-to-goal task for a mobile robot " +"will include the robot asset, an object like cubes to signify the goal pose " +"visually, lights, ground plane, etc. Isaac Lab understands these assets " +"using the configuration classes. Isaac Lab provides various sim-ready assets" +" such as physically accurate 3D objects that encompass accurate physical " +"properties and behavior. It also provides connected data streams to " +"represent the real world in simulated digital worlds such as `robots " +"`__" +" like ANYbotics Anymal, Unitree H1 Humanoid, etc. as well as `sensors " +"`__." +" We provide these assets configuration classes. Users can also define their " +"own assets using the configuration classes." +msgstr "" +"假设您已拥有机器人的资产文件和基于任务所需的其他环境对象资产,接下来的步骤是将它们导入到 Isaac Lab 中。Isaac Lab 使用资产配置类通过" +" Python " +"将各种对象(或原型)生成到场景中。第一步是编写配置类,以定义完成任务所需资产的属性。例如,一个简单的移动机器人前往目标任务会包括机器人资产、一个如立方体的物体来视觉化目标位置、灯光、地面等。Isaac" +" Lab 使用配置类来理解这些资产。Isaac Lab 提供了各种适用于模拟的资产,例如包含准确物理属性和行为的真实物理 3D " +"对象。它还提供了与现实世界相连接的数据流,以在模拟的数字世界中代表真实世界,如 `robots `__" +" ,包括 ANYbotics Anymal、Unitree H1 Humanoid 等,以及 `sensors " +"`__" +" 。我们提供了这些资产配置类。用户还可以使用配置类定义自己的资产。" + +#: ../../source/refs/reference_architecture/index.rst:81 +msgid "" +"Follow the tutorial on `how to write an Articulation and ArticulationCfg " +"class `__." +msgstr "" +"请参阅关于 `如何编写 Articulation 和 ArticulationCfg 类 `__ " +"的教程。" + +#: ../../source/refs/reference_architecture/index.rst:84 +msgid "Scene Configuration" +msgstr "场景配置" + +#: ../../source/refs/reference_architecture/index.rst:86 +msgid "" +"Given the individual asset configurations, the next step is to put all the " +"assets together into a scene. The scene configuration is a simple config " +"class that initializes all the assets in the scene that are needed for the " +"task and for visualization. This is an example for the `Cartpole example " +"scene configuration `__, which includes the cartpole, ground plane, and dome " +"light." +msgstr "" +"在定义了单个资产配置后,接下来是将所有资产组合成一个场景。场景配置是一个简单的配置类,用于初始化场景中完成任务和可视化所需的所有资产。这是 " +"`Cartpole 示例场景配置 `__ 的一个示例,其中包括了倒立摆、地面和圆顶灯光。" + +#: ../../source/refs/reference_architecture/index.rst:96 +msgid "Component 3 - Robot Learning Task Design" +msgstr "组件 3 - 机器人学习任务设计" + +#: ../../source/refs/reference_architecture/index.rst:97 +msgid "" +"Now, we have the scene for the task, but we need to define the robot " +"learning task. We will focus on `reinforcement learning (RL) " +"`__ " +"algorithm here. We define the RL task that the agent is going to do. RL " +"tasks are defined as a Markov Decision Process (MDP), which is a stochastic " +"decision-making process where optional decisions are made for the agents " +"considering their current state and environment they interact with. The " +"environment provides the agents’ current state or observations, and executes" +" the actions provided by the agent. The environment responds to the agents " +"by providing the next states, reward of taking the action, done flag and " +"information about the current episode. Therefore, different components of " +"the MDP formulation (the environment) – states, actions, rewards, reset, " +"done, etc. — must be defined by the user for the agent to perform the given " +"task." +msgstr "" +"现在,我们有了任务的场景,但还需要定义机器人学习任务。我们将专注于 `强化学习 (RL) " +"`__ " +"算法。在这里,我们定义智能体将执行的 RL 任务。RL " +"任务被定义为一个马尔科夫决策过程(MDP),它是一种随机决策过程,其中智能体根据当前的状态和与环境的交互做出可选决策。环境为智能体提供当前的状态或观测,并执行智能体提供的动作。环境通过提供下一个状态、奖励、任务完成标志等信息来回应智能体。因此,MDP" +" 的不同组成部分(环境)——状态、动作、奖励、重置、结束等——必须由用户为智能体定义,以便执行给定的任务。" + +#: ../../source/refs/reference_architecture/index.rst:108 +msgid "" +"In Isaac Lab, we provide two different workflows for designing environments." +msgstr "在 Isaac Lab 中,我们提供了两种不同的环境设计工作流。" + +#: ../../source/refs/reference_architecture/index.rst:111 +msgid "Manager-based" +msgstr "基于管理器" + +#: ../../source/refs/reference_architecture/index.rst:-1 +msgid "Manager-based Task Workflow" +msgstr "基于管理器的任务工作流" + +#: ../../source/refs/reference_architecture/index.rst:122 +msgid "" +"This workflow is modular, and the environment is decomposed into individual " +"components (or managers) that handle the different aspects of the " +"environment, such as computing observations, applying actions, and applying " +"randomization. As a user, you define different configuration classes for " +"each component." +msgstr "" +"此工作流是模块化的,环境被分解为处理不同方面(如计算观测、应用动作和随机化)的单独组件(或管理器)。作为用户,您为每个组件定义不同的配置类。" + +#: ../../source/refs/reference_architecture/index.rst:127 +msgid "An RL task should have the following configuration classes:" +msgstr "一个 RL 任务应具有以下配置类:" + +#: ../../source/refs/reference_architecture/index.rst:129 +msgid "Observations Config: Defines the agents’ observations for the task." +msgstr "观测配置:定义智能体在任务中的观测。" + +#: ../../source/refs/reference_architecture/index.rst:130 +msgid "" +"Actions Config: Defines the agent’s action type, i.e. how the output of the " +"agent are mapped to the robot's control inputs." +msgstr "动作配置:定义智能体的动作类型,即如何将智能体的输出映射到机器人的控制输入。" + +#: ../../source/refs/reference_architecture/index.rst:132 +msgid "Rewards Config: Defines the reward function for the task" +msgstr "奖励配置:定义任务的奖励函数。" + +#: ../../source/refs/reference_architecture/index.rst:133 +msgid "" +"Terminations Config: Defines the conditions for termination of an episode or" +" when the task is completed." +msgstr "终止配置:定义任务完成或任务回合结束的条件。" + +#: ../../source/refs/reference_architecture/index.rst:136 +msgid "" +"You can add other optional configuration classes such as Event Config which " +"defines the set of randomizations and noisification for the agent and " +"environment, Curriculum Config for tasks that require `curriculum learning`_" +" and Commands Config for tasks where the input is from a controller/setpoint" +" controls e.g. a gamepad controller." +msgstr "" +"您还可以添加其他可选的配置类,例如事件配置,用于定义智能体和环境的随机化和噪声设置;课程配置,用于需要 `课程学习`_ " +"的任务;以及命令配置,用于需要从控制器或设定点控制(例如游戏手柄控制器)的任务。" + +#: ../../source/refs/reference_architecture/index.rst:140 +msgid "" +"To learn more on how you can design your own manager-based environment, see " +":ref:`tutorial-create-manager-rl-env`." +msgstr "有关如何设计您自己的基于管理器的环境,请参阅 :ref:`tutorial-create-manager-rl-env` 。" + +#: ../../source/refs/reference_architecture/index.rst:145 +msgid "Direct" +msgstr "直接式" + +#: ../../source/refs/reference_architecture/index.rst:-1 +msgid "Direct-based Task Workflow" +msgstr "基于直接式控制的任务工作流" + +#: ../../source/refs/reference_architecture/index.rst:156 +msgid "" +"In this workflow, you implement a single class that is responsible for " +"computing observations, applying actions, and computing rewards. This " +"workflow allows for direct control of the environment logic." +msgstr "在此工作流中,您实现一个单一的类,负责计算观测、应用动作和计算奖励。此工作流允许直接控制环境逻辑。" + +#: ../../source/refs/reference_architecture/index.rst:159 +msgid "" +"To learn more on how you can design your own direct environment, see " +":ref:`tutorial-create-direct-rl-env`." +msgstr "有关如何设计您自己的直接环境,请参阅 :ref:`tutorial-create-direct-rl-env` 。" + +#: ../../source/refs/reference_architecture/index.rst:161 +msgid "" +"Users can choose from Isaac Lab’s large suite of pre-configured environments" +" or users can define their own environments. For more technical information " +"about the two workflows, please see the `documentation `__." +msgstr "" +"用户可以选择使用 Isaac Lab 提供的多种预配置环境,或者用户可以定义自己的环境。有关这两种工作流的更多技术信息,请参阅 `文档 " +"`__ 。" + +#: ../../source/refs/reference_architecture/index.rst:166 +msgid "" +"In addition to designing the RL task, you will need to design your agent’s " +"model, the neural network policy and value function. To train the RL agent " +"to solve the task, you need to define the hyperparameters such as number of " +"epochs, learning rate, etc. for training and the policy/value model " +"architecture. This is defined in the training configuration file specific to" +" the RL library you want to use. Examples are created under the agent's " +"folder in each task directory. See an example of `RSL-RL " +"`__" +" for Anymal-B." +msgstr "" +"除了设计 RL 任务外,您还需要设计智能体的模型、神经网络策略和价值函数。为了训练 RL " +"智能体解决任务,您需要定义训练的超参数,如训练的轮数、学习率等,以及策略/价值模型的架构。这些内容在特定于您要使用的 RL " +"库的训练配置文件中定义。示例已在每个任务目录下的智能体文件夹中创建。请参见 `RSL-RL `__" +" 中的 Anymal-B 示例。" + +#: ../../source/refs/reference_architecture/index.rst:177 +msgid "Component 4 - Register with Gymnasium" +msgstr "组件 4 - 在 Gymnasium 中注册" + +#: ../../source/refs/reference_architecture/index.rst:179 +msgid "" +"The next step is to register the environments with the gymnasium registry to" +" allow you to create the environment using the unique environment name. " +"Registration is a way to make the environment accessible and reusable across" +" different RL algorithms and experiments. This is common in the RL " +"community. Follow the tutorial on `Registering an Environment " +"`__" +" to learn more about how to register in your own environment." +msgstr "" +"下一步是将环境注册到 Gymnasium 注册表中,以便使用唯一的环境名称创建环境。注册是一种使环境在不同的 RL " +"算法和实验中可访问和可重用的方式。这在 RL 社区中很常见。请参阅关于 `注册环境 `__" +" 的教程,了解如何在自己的环境中注册。" + +#: ../../source/refs/reference_architecture/index.rst:187 +msgid "Component 5 - Environment Wrapping" +msgstr "组件 5 - 环境封装" + +#: ../../source/refs/reference_architecture/index.rst:188 +msgid "" +"In running your RL task, you might want to change the behavior of your " +"environment without changing the environment itself. For example, you might " +"want to create functions to modify observations or rewards, record videos, " +"or enforce time limits. Isaac Lab utilizes the API available in the " +"`gymnasium.Wrapper `__ " +"class to create interfaces to the simulated environments." +msgstr "" +"在运行 RL 任务时,您可能希望在不改变环境本身的情况下修改环境的行为。例如,您可能希望创建函数来修改观测或奖励、录制视频或强制执行时间限制。Isaac" +" Lab 利用 `gymnasium.Wrapper " +"`__ 类提供的 API 创建模拟环境的接口。" + +#: ../../source/refs/reference_architecture/index.rst:193 +msgid "Some wrappers include:" +msgstr "一些封装器包括:" + +#: ../../source/refs/reference_architecture/index.rst:195 +msgid "" +"`Video Wrappers `__" +msgstr "" +"`视频封装器 `__" + +#: ../../source/refs/reference_architecture/index.rst:196 +msgid "" +"`RL Libraries Wrappers `__" +msgstr "" +"`RL库封装器 `__" + +#: ../../source/refs/reference_architecture/index.rst:198 +msgid "" +"Most RL libraries expect their own variation of an environment interface. " +"This means the data types needed by each library differs. Isaac Lab provides" +" its own wrappers to convert the environment into the expected interface by " +"the RL library a user wants to use. These are specified in the `Isaac Lab " +"utils wrapper module `__." +msgstr "" +"大多数RL库期望它们自己的环境接口变体。这意味着每个库所需的数据类型是不同的。Isaac " +"Lab提供了自己的封装器,将环境转换为用户希望使用的RL库所期望的接口。这些封装器在 `Isaac Lab utils wrapper module " +"`__ 中进行说明。" + +#: ../../source/refs/reference_architecture/index.rst:203 +msgid "" +"See the `full list " +"`__ of other " +"wrappers APIs. For more information on how these wrappers work, please refer" +" to the `Wrapping environments `__ documentation." +msgstr "" +"查看 `完整列表 " +"`__ 的其他封装器API。有关这些封装器如何工作的更多信息,请参阅 `包装环境" +" `__ 文档。" + +#: ../../source/refs/reference_architecture/index.rst:207 +msgid "Adding your own wrappers" +msgstr "添加自己的封装器" + +#: ../../source/refs/reference_architecture/index.rst:209 +msgid "" +"You can define your own wrappers by adding them to the Isaac Lab utils " +"wrapper module. More information is available `on the GitHub page for " +"wrapping environments `__." +msgstr "" +"您可以通过将它们添加到Isaac Lab utils wrapper module来定义自己的封装器。更多信息请参阅 `GitHub页面上的包装环境说明 " +"`__ 。" + +#: ../../source/refs/reference_architecture/index.rst:214 +msgid "Component 6 - Run Training" +msgstr "组件 6 - 运行训练" + +#: ../../source/refs/reference_architecture/index.rst:216 +msgid "" +"Finally, the last step is to run the training of the RL agent. Isaac Lab " +"provides scripts which utilizes four popular RL libraries for training the " +"models (GPU-based training):" +msgstr "最后一步是运行RL代理的训练。Isaac Lab提供了脚本,利用四个流行的RL库来训练模型(基于GPU的训练):" + +#: ../../source/refs/reference_architecture/index.rst:218 +msgid "" +"`StableBaselines3 `__" +msgstr "" +"`StableBaselines3 `__" + +#: ../../source/refs/reference_architecture/index.rst:219 +msgid "`RSL-RL `__" +msgstr "`RSL-RL `__" + +#: ../../source/refs/reference_architecture/index.rst:220 +msgid "`RL-Games `__" +msgstr "`RL-Games `__" + +#: ../../source/refs/reference_architecture/index.rst:221 +msgid "`SKRL `__" +msgstr "`SKRL `__" + +#: ../../source/refs/reference_architecture/index.rst:226 +msgid "" +"Isaac Lab does not provide the implementation of these RL libraries. They " +"are already implemented by different authors. We provide the environments " +"and framework wrappers for the RL libraries." +msgstr "Isaac Lab不提供这些RL库的实现。它们已经由不同的作者实现。我们提供了用于RL库的环境和框架封装器。" + +#: ../../source/refs/reference_architecture/index.rst:230 +msgid "" +"If you want to integrate a different version of the provided algorithms or " +"your learning library, you can follow `these instructions `__." +msgstr "" +"如果您希望集成不同版本的提供算法或您的学习库,可以按照 `这些说明 `__ 进行操作。" + +#: ../../source/refs/reference_architecture/index.rst:236 +msgid "Single GPU Training" +msgstr "单GPU训练" + +#: ../../source/refs/reference_architecture/index.rst:-1 +msgid "Single GPU Training Data Flow" +msgstr "单GPU训练数据流" + +#: ../../source/refs/reference_architecture/index.rst:247 +msgid "" +"Isaac Lab supports training massively parallel environments to speed up RL " +"training and provides rich data for the model to train. For single GPU " +"training, the following steps show how training works in Isaac Sim and Isaac" +" Lab:" +msgstr "" +"Isaac Lab支持训练大规模并行环境,以加速RL训练,并为模型提供丰富的数据进行训练。对于单GPU训练,以下步骤展示了Isaac Sim和Isaac" +" Lab中训练的工作流程:" + +#: ../../source/refs/reference_architecture/index.rst:250 +#: ../../source/refs/reference_architecture/index.rst:267 +msgid "**In Isaac Sim**" +msgstr "**在Isaac Sim中**" + +#: ../../source/refs/reference_architecture/index.rst:252 +msgid "" +"Isaac Sim provides the asset states such as robot and sensor states, " +"including the observations defined in the task observation config class." +msgstr "Isaac Sim提供了资产状态,如机器人和传感器状态,包括在任务观察配置类中定义的观察。" + +#: ../../source/refs/reference_architecture/index.rst:254 +msgid "**In Isaac Lab**" +msgstr "**在Isaac Lab中**" + +#: ../../source/refs/reference_architecture/index.rst:256 +msgid "" +"Randomizations are added to the states defined in the event configuration " +"class to obtain the observation for the task. Randomizations are however " +"optional. If not defined, the states are the observations." +msgstr "在事件配置类中定义的状态添加了随机化,以获取任务的观察。随机化是可选的。如果未定义,则状态就是观察。" + +#: ../../source/refs/reference_architecture/index.rst:257 +msgid "" +"The observations are computed as PyTorch tensors, and it can optionally " +"include the action provided by the trained model based on the task." +msgstr "观察被计算为PyTorch张量,并且可以选择性地包括训练模型根据任务提供的动作。" + +#: ../../source/refs/reference_architecture/index.rst:259 +msgid "**In the RL library**" +msgstr "**在RL库中**" + +#: ../../source/refs/reference_architecture/index.rst:261 +msgid "The observation is passed to the policy." +msgstr "观察被传递给策略。" + +#: ../../source/refs/reference_architecture/index.rst:262 +msgid "" +"The policy is trained to output the right actions for the robot using RL " +"library algorithms such as PPO, TRPO, etc." +msgstr "策略通过使用RL库算法(如PPO、TRPO等)进行训练,以输出适合机器人执行的正确动作。" + +#: ../../source/refs/reference_architecture/index.rst:263 +msgid "" +"The actions can serve either as a setpoint for a controller that generates " +"the action to the robot or used directly as the action to the robot based on" +" the task." +msgstr "动作可以作为控制器的设定点,生成对机器人的动作,或者直接用作基于任务的机器人动作。" + +#: ../../source/refs/reference_architecture/index.rst:264 +msgid "" +"Action types such as joint position for a quadruped is an input to a joint " +"controller, velocity of 1 or 0 is used to control the cart directly in the " +"cartpole task, etc." +msgstr "例如,四足机器人关节位置的动作作为关节控制器的输入,1或0的速度用于直接控制推车任务中的推车等。" + +#: ../../source/refs/reference_architecture/index.rst:265 +msgid "" +"In addition, based on how the task is defined, the previous action can be " +"part of the next set of observations that is sent." +msgstr "此外,根据任务的定义,先前的动作可以作为下一个观察集的一部分发送。" + +#: ../../source/refs/reference_architecture/index.rst:269 +msgid "" +"The actions from the policy are sent back to Isaac Sim to control the agent " +"that is learning i.e. the robot. This is the physics simulation (sim) step. " +"This generates the next states in Isaac Sim and the rewards are calculated " +"in Isaac Lab." +msgstr "" +"来自策略的动作被传回Isaac Sim,以控制正在学习的代理(即机器人)。这是物理仿真(sim)步骤。这会在Isaac " +"Sim中生成下一个状态,并且奖励在Isaac Lab中计算。" + +#: ../../source/refs/reference_architecture/index.rst:271 +msgid "**Rendering**" +msgstr "**渲染**" + +#: ../../source/refs/reference_architecture/index.rst:273 +msgid "The scene can be rendered to produce the cameras' images." +msgstr "场景可以被渲染以生成相机的图像。" + +#: ../../source/refs/reference_architecture/index.rst:276 +msgid "" +"The next state is then passed in the flow till the training reaches the " +"specified training steps or epochs. The final product is the trained " +"model/agent." +msgstr "然后,下一个状态会继续流动,直到训练达到指定的训练步骤或周期。最终产品是经过训练的模型/代理。" + +#: ../../source/refs/reference_architecture/index.rst:281 +msgid "Multi-GPU and Multi-Node Training" +msgstr "多GPU和多节点训练" + +#: ../../source/refs/reference_architecture/index.rst:-1 +msgid "Multi GPU Training Data Flow" +msgstr "多GPU训练数据流" + +#: ../../source/refs/reference_architecture/index.rst:293 +msgid "" +"Isaac Lab supports scaling up training by taking advantage of multi-GPU and " +"multi-node training on Linux. Follow the tutorial on `Multi-GPU training " +"`__ and `Multi-Node training `__ to get started." +msgstr "" +"Isaac Lab支持通过利用Linux上的多GPU和多节点训练来扩展训练。请参阅 `多GPU训练 `__ 和 `多节点训练 `__ 教程以开始使用。" + +#: ../../source/refs/reference_architecture/index.rst:297 +msgid "Cloud-Based Training" +msgstr "基于云的训练" + +#: ../../source/refs/reference_architecture/index.rst:298 +msgid "" +"Isaac Lab can be deployed alongside Isaac Sim onto the public clouds with " +"`Isaac Automator `__. AWS, GCP," +" Azure, and Alibaba Cloud are currently supported. Follow the tutorial on " +"`how to run Isaac Lab in the cloud `__." +msgstr "" +"Isaac Lab可以与Isaac Sim一起部署到公共云上,使用 `Isaac Automator `__ 。目前支持AWS、GCP、Azure和阿里云。请参阅 `如何在云上运行Isaac Lab " +"`__ 教程。" + +#: ../../source/refs/reference_architecture/index.rst:302 +msgid "" +"Both multi-GPU and multi-node jobs can be easily scaled across heterogeneous" +" environments with `OSMO `__, a cloud-" +"native, orchestration platform for scheduling complex multi-stage and multi-" +"container heterogeneous computing workflows. Isaac Lab also provides the " +"tools to run your RL task in Docker. See more details on `container " +"deployment `__." +msgstr "" +"多GPU和多节点作业可以通过 `OSMO " +"`__ ,一个用于调度复杂的多阶段和多容器异构计算工作流的云原生编排平台,轻松地在异构环境中扩展。Isaac" +" Lab还提供了运行RL任务的工具,支持Docker容器。有关容器部署的更多详细信息,请参阅 `容器部署 `__ 。" + +#: ../../source/refs/reference_architecture/index.rst:307 +msgid "Component 7: Run Testing" +msgstr "组件 7: 运行测试" + +#: ../../source/refs/reference_architecture/index.rst:308 +msgid "" +"Isaac Lab provides scripts for `testing/playing the trained policy " +"`__ on the environment and functions for converting the " +"trained model from .pt to .jit and .onnx for deployment." +msgstr "" +"Isaac Lab提供了脚本用于 `测试/执行训练后的策略 `__ ,并提供了将训练好的模型从.pt格式转换为.jit和.onnx格式以进行部署的功能。" + +#: ../../source/refs/reference_architecture/index.rst:313 +msgid "Deployment on Physical Robots" +msgstr "物理机器人上的部署" + +#: ../../source/refs/reference_architecture/index.rst:-1 +msgid "Isaac Lab Trained Policy Deployment" +msgstr "Isaac Lab训练策略部署" + +#: ../../source/refs/reference_architecture/index.rst:326 +msgid "" +"To deploy your trained model on a real robot, you would need what is shown " +"in the flow diagram. Note, this is a sample reference architecture, hence it" +" can be tweaked for a different application. First, you need a robot with " +"the required sensors and processing computer such as `NVIDIA Jetson " +"`__ to " +"deploy on. Next, you need a state estimator for your robot. The state " +"estimator should be able to deliver the list of observations used for " +"training." +msgstr "" +"要将训练好的模型部署到真实机器人上,您需要如流程图所示的内容。请注意,这是一个示范参考架构,因此可以根据不同的应用进行调整。首先,您需要一台带有必要传感器和处理计算机(如 `NVIDIA" +" Jetson `__ )的机器人来部署。接下来,您需要为机器人配置状态估计器。状态估计器应该能够提供用于训练的观察列表。" + +#: ../../source/refs/reference_architecture/index.rst:329 +msgid "" +"Once the observations are extracted, they are passed into the model which " +"delivers the action using the model inferencing runtime. The commanded " +"action from the model serves as setpoints for the action controller. The " +"action controller outputs scaled actions which are then used to control the " +"robot to get to the next state, and this continues till the task is done." +msgstr "" +"一旦提取出观察,它们会传递到模型中,模型通过推理运行时生成动作。模型中的命令动作作为设定点传递给动作控制器。动作控制器输出缩放后的动作,然后用于控制机器人到达下一个状态,直到任务完成。" + +#: ../../source/refs/reference_architecture/index.rst:331 +#, python-format +msgid "" +"NVIDIA Isaac platform provides some tools for state estimation, including " +"visual slam and inferencing engines such as `TensorRT " +"`__." +" Other inferencing runtime includes `OnnxRuntime " +"`__, direct inferencing on the PyTorch model, etc." +msgstr "" +"NVIDIA Isaac平台提供了一些用于状态估计的工具,包括视觉SLAM和推理引擎,如 `TensorRT " +"`__ 。其他推理运行时包括 `OnnxRuntime" +" `__ ,直接在PyTorch模型上进行推理等。" + +#: ../../source/refs/reference_architecture/index.rst:337 +msgid "Summary" +msgstr "总结" + +#: ../../source/refs/reference_architecture/index.rst:339 +msgid "" +"This document presents a reference architecture for Isaac Lab that has " +"undergone SQA testing. We have provided a user-friendly guide to end-to-end " +"robot learning with Isaac Lab and Isaac Sim from training to real-world " +"deployment, including demos, examples, and documentation links." +msgstr "" +"本文档展示了经过SQA测试的Isaac Lab参考架构。我们提供了一个面向用户的端到端机器人学习指南,涵盖了从训练到实际部署的Isaac " +"Lab和Isaac Sim,包括演示、示例和文档链接。" + +#: ../../source/refs/reference_architecture/index.rst:343 +msgid "How to Get Started" +msgstr "如何开始" + +#: ../../source/refs/reference_architecture/index.rst:344 +msgid "Check out our resources on using Isaac Lab with your robots." +msgstr "查看我们的资源,了解如何将Isaac Lab与您的机器人结合使用。" + +#: ../../source/refs/reference_architecture/index.rst:346 +msgid "Review Our Documentation & Samples Resources" +msgstr "查看我们的文档与示例资源" + +#: ../../source/refs/reference_architecture/index.rst:348 +msgid "`Isaac Lab Tutorials`_" +msgstr "`Isaac Lab 教程`_" + +#: ../../source/refs/reference_architecture/index.rst:349 +msgid "`Fast-Track Robot Learning in Simulation Using NVIDIA Isaac Lab`_" +msgstr "`使用NVIDIA Isaac Lab在仿真中快速跟踪机器人学习`_`" + +#: ../../source/refs/reference_architecture/index.rst:350 +msgid "" +"`Supercharge Robotics Workflows with AI and Simulation Using NVIDIA Isaac " +"Sim 4.0 and NVIDIA Isaac Lab`_" +msgstr "" +"`使用NVIDIA Isaac Sim 4.0和NVIDIA Isaac Lab进行人工智能和模拟的超级充电机器人工作流程`_" + +#: ../../source/refs/reference_architecture/index.rst:351 +msgid "" +"`Closing the Sim-to-Real Gap: Training Spot Quadruped Locomotion with NVIDIA" +" Isaac Lab `__" +msgstr "" +"缩小Sim-to-Real差距:使用NVIDIA Isaac Lab训练Spot四足运动 " +"`__" + +#: ../../source/refs/reference_architecture/index.rst:352 +msgid "`Additional Resources`_" +msgstr "`其他资源`_" + +#: ../../source/refs/reference_architecture/index.rst:354 +msgid "Learn More About Featured NVIDIA Solutions" +msgstr "了解有关NVIDIA特色解决方案的更多信息" + +#: ../../source/refs/reference_architecture/index.rst:356 +msgid "`Scale AI-Enabled Robotics Development Workloads with NVIDIA OSMO`_" +msgstr "`使用NVIDIA OSMO扩展人工智能机器人开发工作量`_" + +#: ../../source/refs/reference_architecture/index.rst:357 +msgid "" +"`Parkour and More: How Simulation-Based RL Helps to Push the Boundaries in " +"Legged Locomotion (GTC session) `__" +msgstr "" +"`跑酷与更多:基于仿真的强化学习如何推动四足行走的边界(GTC 会议) `__" + +#: ../../source/refs/reference_architecture/index.rst:358 +msgid "`Isaac Perceptor`_" +msgstr "`Isaac 感知器`_" + +#: ../../source/refs/reference_architecture/index.rst:359 +msgid "`Isaac Manipulator`_" +msgstr "`Isaac 操作器`_" diff --git a/docs/source/_static/wechat-group2-1030.jpg b/docs/source/_static/wechat-group2-1030.jpg deleted file mode 100644 index 1c846bac424a761e6ea0933da67ae759bfa62c4e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172162 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 U-jAOY3y;0Uti}0Rl8~ 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

S1451s5+0>>{;g^})$nXPc2Hbiht=Ss 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 diff --git a/docs/source/_static/wechat-group2-1106.jpg b/docs/source/_static/wechat-group2-1106.jpg new file mode 100644 index 0000000000000000000000000000000000000000..77adcaab5605b0f903138ae24ef890c69b51d349 GIT binary patch literal 171666 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%0AqG{EPb$@TqBlbK1-MxxULy< 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 Ka_{N3@c#lPq~=xt literal 0 HcmV?d00001 diff --git a/docs/source/setup/translation.rst b/docs/source/setup/translation.rst index 5013e44367..0e794c4cb7 100644 --- a/docs/source/setup/translation.rst +++ b/docs/source/setup/translation.rst @@ -7,9 +7,11 @@ 官方文档引入了版本系统,可以查看历史版本的文档。译者精力有限,故不提供历史版本翻译,本站只同步更新main分支的文档。 -原版英文文档网站: `https://isaac-sim.github.io/IsaacLab `__ +IsaacLab原版英文文档网站: `https://isaac-sim.github.io/IsaacLab `__ -中文翻译文档网站: `https://docs.robotsfan.com/isaaclab `__ +IsaacLab中文翻译文档网站: `https://docs.robotsfan.com/isaaclab `__ + +IsaacSim中文文档网站(API自动翻译): `https://docs.robotsfan.com/isaacsim `__ 所有翻译均开源在 `fan-ziqi/IsaacLab `__ ,译者: `github@fan-ziqi `__ 。如果你对此翻译项目有疑问,请通过 fanziqi614@gmail.com 联系译者。 diff --git a/docs/source/setup/wechat.rst b/docs/source/setup/wechat.rst index 692458639f..584359128b 100644 --- a/docs/source/setup/wechat.rst +++ b/docs/source/setup/wechat.rst @@ -5,9 +5,9 @@ 为保证群聊质量,进入大群后请按照 **单位-姓名或昵称-研究方向** 修改备注。 -.. figure:: ../_static/wechat-group2-1030.jpg +.. figure:: ../_static/wechat-group2-1106.jpg :width: 500px :align: center :alt: 微信交流群中转群二维码 -更新日期:2024.10.22 \ No newline at end of file +更新日期:2024.11.06 \ No newline at end of file