unisim.backend.isaacgym.sensors

Compatibility surface for shared MJCF subprocess metadata helpers.

Functions

scan_scene_metadata(model_file, *[, ...])

Preserve the historical IsaacGym diagnostic label for direct callers.

class unisim.backend.isaacgym.sensors.SceneMetadata[source]

Bases: object

Cold-path scan result for one MJCF scene.

Parameters:
model_file: str
sensors: dict[str, SceneSensorSpec]
unsupported_sensors: dict[str, UnsupportedSensorSpec]
keyframes: dict[str, ndarray]
joint_names: tuple[str, ...] = ()

] layout).

Note: <include> splicing order is approximated by file-visit order; scenes whose joints live in more than one file are not supported by the keyframe application path.

Type:

Single-DoF joint names in MJCF document order (the qpos[7

body_names: tuple[str, ...] = ()

Body names in MJCF document order (depth-first pre-order, worldbody excluded).

freejoint_body_name: str | None = None

Name of the body owning the free joint (the floating root), if any.

actuators: tuple[ActuatorSpec, ...] = ()

one joint each).

Type:

<position> actuators in document order (transmission

joint_ranges: tuple[tuple[float, float], ...] = ()

Per-joint range aligned with joint_names; (-inf, inf) when undeclared.

joint_armature: tuple[float, ...] = ()

Per-joint armature aligned with joint_names (defaults-class resolved).

joint_frictionloss: tuple[float, ...] = ()

Per-joint frictionloss aligned with joint_names (defaults-class resolved).

__init__(model_file, sensors=<factory>, unsupported_sensors=<factory>, keyframes=<factory>, joint_names=(), body_names=(), freejoint_body_name=None, actuators=(), joint_ranges=(), joint_armature=(), joint_frictionloss=())
Parameters:
unisim.backend.isaacgym.sensors.scan_scene_metadata(model_file, *, backend_label='isaacgym')[source]

Preserve the historical IsaacGym diagnostic label for direct callers.

Parameters:
  • model_file (str)

  • backend_label (str)

Return type:

SceneMetadata