scenic.simulators.isaac.backends.lab

Summary of Module Members

Classes

LabBackend

Backend translating Scenic objects into Isaac Lab asset configurations.

Member Details

class LabBackend[source]

Bases: IsaacBackend

Backend translating Scenic objects into Isaac Lab asset configurations.

Unlike the direct Isaac Sim backends, objects are not spawned one at a time: IsaacLabSimulation collects them, this backend turns each into an asset cfg added to the env’s scene cfg, and Isaac Lab builds the whole scene (cloned across num_envs environments).

ensureApp(*, headless=False, device=None, app_launcher_args=None)[source]

Launch Isaac Sim once through Isaac Lab’s AppLauncher.

safeAssetName(name)[source]

Turn a Scenic object name into a valid cfg field / prim name.

Parameters:

name (str)

makeEnvironmentCfg(environmentUsdPath)[source]

Create a static environment asset cloned into every Lab environment.

makeRigidUsdWrapper(usd_path, obj, asset_name, tmp_mesh_dir)[source]

Create a local rigid-body wrapper without modifying the source USD.

applyRigidBodyApiToUsd(usd_path, obj)[source]

Patch a local USD so Isaac Lab can load it as a RigidObjectCfg.

RigidObjectCfg requires exactly one UsdPhysics.RigidBodyAPI below its configured prim. CollisionAPI is applied to mesh children and MassAPI to the rigid body prim.

applyRobotControl(sim, obj, command)[source]

Buffer a robot command; IsaacLabSimulation applies it before env.step().

applyArticulationAction(sim, obj, action)[source]

Apply a generic articulation action to every environment.