curobo.viewer module

Visualization module.

This module provides visualization backends for CuRobo. Viser and usd-core are optional dependencies and are imported lazily on first use.

Available visualizers:
  • ViserVisualizer: Interactive 3D visualization with a web interface.

  • UsdWriter: Offline export of robot trajectories to USD for OpenUSD-compatible viewers (e.g., Isaac Sim, usdview).

Example (Viser):

```python from curobo.viewer import ViserVisualizer from curobo.types import JointState

viz = ViserVisualizer(

robot_config=”franka.yml”, connect_ip=”0.0.0.0”, connect_port=8080, add_control_frames=True,

) # Opens web interface at http://localhost:8080 joint_state = JointState.from_position([0.0, -0.5, 0.0, -2.0, 0.0, 1.5, 0.0]) viz.set_joint_state(joint_state) ```

Example (USD):

```python from curobo.viewer import UsdWriter

writer = UsdWriter(“trajectory.usd”, robot_config=”franka.yml”) writer.write(joint_trajectory) ```

ViserVisualizer(*args, **kwargs)

Create Viser visualizer for interactive 3D visualization.

Viser provides an interactive web-based 3D viewer with real-time control capabilities, including draggable control frames.

Parameters:
  • *args – Positional arguments passed to ViserVisualizer

  • **kwargs – Keyword arguments passed to ViserVisualizer

Returns:

ViserVisualizer instance

Raises:

ImportError – If viser is not installed. Install with: pip install viser

UsdWriter(*args, **kwargs)

Create a USD writer for exporting robot trajectories to OpenUSD files.

UsdWriter serializes robot geometry and joint trajectories to a USD stage that can be inspected in any OpenUSD-compatible viewer (Isaac Sim, usdview, etc.).

Parameters:
  • *args – Positional arguments passed to the underlying USD writer.

  • **kwargs – Keyword arguments passed to the underlying USD writer.

Returns:

USD writer instance.

Raises:

ImportError – If usd-core is not installed. Install with: pip install usd-core (skip this when running inside Isaac Sim).