[isaacsim.sensors.rtx] Isaac Sim Isaac Sensor Simulation#
Warning
Deprecation: Extension deprecated since Isaac Sim 6.0.0 in favor of the Experimental extension: isaacsim.sensors.experimental.rtx
Version: 15.17.5
Overview#
Deprecated since version 6.0.0: This extension is deprecated in favor of isaacsim.sensors.experimental.rtx.
**isaacsim.sensors.rtx** provides Python APIs for RTX-based sensor simulation, including creation commands for RTX Lidar, RTX Radar, and RTX IDS sensors. It is mainly used to create sensor prims from configs or USD assets, then collect sensor output through annotators and writers. RTX Radar creation has one important requirement: Motion BVH must be enabled, otherwise IsaacSensorCreateRtxRadar logs a warning and does not create a prim.
Concepts#
Sensor creation commands#
The extension exposes command classes for creating RTX sensor prims:
These commands inherit from **omni.kit.commands.Command**, so they can be executed through the Kit command system and support undo by deleting the created prim.
The shared creation parameters include:
path: target path for the sensor primparent: parent prim pathconfig: named sensor configurationusd_path: USD asset path for the sensortranslation: sensor placementorientation: sensor orientationvisibility: sensor visibilityvariant: sensor variant selectionforce_camera_prim: forces direct camera prim creation
If both config and usd_path are provided, config takes precedence.
Lidar frames#
LidarRtx is the main runtime API for working with an RTX Lidar sensor. It wraps an existing Lidar prim and provides access to the current frame through get_current_frame().
A frame contains timing information, frame number information, and data from any attached annotators. The exact contents depend on which annotators are attached.
Annotators and writers#
Annotators add sensor outputs to the current frame. Writers are used for output handling or visualization workflows.
Supported LidarRtx.attach_annotator() values include:
IsaacComputeRTXLidarFlatScanIsaacExtractRTXSensorPointCloudNoAccumulatorIsaacCreateRTXLidarScanBufferStableIdMapGenericModelOutput
Writers are attached by name with attach_writer(), such as RtxLidarDebugDrawPointCloud.
Key Components#
LidarRtx#
LidarRtx provides the Python interface for creating and managing an RTX-based Lidar sensor object in a simulation script.
It accepts a prim_path, optional transform values, and an optional config_file_name. The prim at prim_path must be an OmniLidar or have the required sensor API, otherwise construction raises an exception.
Common operations include:
initialize()to prepare sensor data acquisitionget_current_frame()to read the latest frame dataattach_annotator()anddetach_annotator()to control frame outputsattach_writer()anddetach_writer()to connect writerspause(),resume(), andis_paused()to control data acquisitionenable_visualization()anddisable_visualization()for Lidar point cloud visualizationget_render_product_path()to inspect the render product used by the sensor
IsaacSensorCreateRtxLidar#
IsaacSensorCreateRtxLidar creates an RTX Lidar prim. After creation, it applies Lidar-specific output settings, including keeping invalid points, accumulating outputs, and mapping auxOutputType to the Replicator RenderVar channels attribute.
Use this command when you want to create the sensor prim first, then wrap it with LidarRtx for frame access.
Note
This extension is deprecated. Prefer the experimental RTX sensor APIs, where
Lidar(..., aux_output_level="EXTRA") and Radar(..., aux_output_level="BASIC")
author the metadata needed by GenericModelOutput.
For this legacy command API, set aux output attributes such as
omni:sensor:Core:auxOutputType at sensor creation time and before creating the
render product or attaching GenericModelOutput/ScanBuffer annotators. Changing
auxOutputType after the sensor prim has already been authored is not a
supported way to reconfigure an existing GenericModelOutput RenderVar; recreate
the render product/annotator path or use the experimental API instead.
IsaacSensorCreateRtxRadar#
IsaacSensorCreateRtxRadar creates an RTX Radar prim. It checks Motion BVH settings before creating the sensor. If Motion BVH is not enabled, the command returns None.
For a valid Radar prim, it maps Radar auxOutputType to the RenderVar channels attribute.
IsaacSensorCreateRtxIDS#
IsaacSensorCreateRtxIDS creates an RTX Idealized Depth Sensor. If no config is provided, it uses idsoccupancy as the default configuration.
Functionality#
Create RTX sensors#
The creation commands can be executed through **omni.kit.commands**. This is useful when sensor creation should participate in the command and undo system.
import omni.kit.commands
from pxr import Gf
# Use a supported Lidar config name for your installation.
config_name = "..."
prim = omni.kit.commands.execute(
"IsaacSensorCreateRtxLidar",
path="/World/Lidar",
config=config_name,
translation=Gf.Vec3d(0.0, 0.0, 1.0),
orientation=Gf.Quatd(1.0, 0.0, 0.0, 0.0),
visibility=False,
)
print(prim.GetPath())
Read Lidar data#
After a Lidar prim exists, use LidarRtx to attach annotators and read the current frame.
from isaacsim.sensors.rtx import LidarRtx
lidar = LidarRtx(prim_path="/World/Lidar")
lidar.attach_annotator("IsaacComputeRTXLidarFlatScan")
lidar.initialize()
frame = lidar.get_current_frame()
print(frame.keys())
print(frame.get("rendering_time"))
Visualize Lidar output#
LidarRtx can attach writers for visualization or output workflows. For point cloud debug drawing, attach a writer such as RtxLidarDebugDrawPointCloud.
from isaacsim.sensors.rtx import LidarRtx
lidar = LidarRtx(prim_path="/World/Lidar")
lidar.attach_writer("RtxLidarDebugDrawPointCloud")
lidar.enable_visualization()
Decode object IDs and labels#
LidarRtx includes helper methods for working with object identity outputs from StableIdMap and GenericModelOutput.
from isaacsim.sensors.rtx import LidarRtx
lidar = LidarRtx(prim_path="/World/Lidar")
lidar.attach_annotator("StableIdMap")
lidar.attach_annotator("IsaacCreateRTXLidarScanBuffer")
lidar.initialize()
frame = lidar.get_current_frame()
stable_id_data = frame.get("StableIdMap")
scan_buffer = frame.get("IsaacCreateRTXLidarScanBuffer")
if stable_id_data is not None and scan_buffer is not None:
stable_id_to_label = LidarRtx.decode_stable_id_mapping(stable_id_data)
object_ids = LidarRtx.get_object_ids(scan_buffer["objectId"])
labels = [stable_id_to_label.get(object_id) for object_id in object_ids]
print(labels)
Configuration#
The extension defines sensor-related settings that affect RTX sensor output behavior:
app.sensors.nv.lidar.outputBufferOnGPU: controls whether the renderer keeps the Lidar return buffer on GPU for post-processing.app.sensors.nv.radar.outputBufferOnGPU: controls whether the renderer keeps the Radar return buffer on GPU for post-processing.rtx.materialDb.nonVisualMaterialCSV.enabled: enables non-visual materials using USD attributes.rtx.materialDb.nonVisualMaterialSemantics.prefix: sets the USD attribute prefix used for non-visual material semantics.rtx.rtxsensor.useHydraTimeAlways: uses Hydra time from**omni.timeline**in RTX sensor models when multi-tick rendering is disabled.
Relationships#
LidarRtx inherits from **isaacsim.core.api.sensors.base_sensor.BaseSensor**, so it follows the same general sensor object pattern used by other Isaac Sim sensor APIs.
The sensor creation classes inherit from **omni.kit.commands.Command**, which gives them command execution and undo behavior.
The modules **isaacsim.sensors.rtx.generic_model_output** and **isaacsim.sensors.rtx.sensor_checker** forward their public symbols from **isaacsim.sensors.experimental.rtx.generic_model_output** and **isaacsim.sensors.experimental.rtx.sensor_checker**.
The extension is backed by a Carbonite C++ plugin (isaacsim.sensors.rtx.plugin) with an _isaacsim_sensors_rtx Python binding module. The plugin registers the OmniGraph nodes that implement the RTX sensor annotators, such as IsaacComputeRTXLidarFlatScan and IsaacCreateRTXLidarScanBuffer, which LidarRtx attaches to read sensor output.
Enable Extension#
The extension can be enabled (if not already) in one of the following ways:
Define the next entry as an application argument from a terminal.
APP_SCRIPT.(sh|bat) --enable isaacsim.sensors.rtx
Define the next entry under [dependencies] in an experience (.kit) file or an extension configuration (extension.toml) file.
[dependencies]
"isaacsim.sensors.rtx" = {}
Open the Window > Extensions menu in a running application instance and search for isaacsim.sensors.rtx.
Then, toggle the enable control button if it is not already active.
Extension: {{ extension_version }} |
Documentation Generated: Sep 10, 2026 |
Settings#
app.sensors.nv.lidar.outputBufferOnGPU#
Default Value: false
Description: Controls whether the renderer keeps the Lidar return buffer on the GPU for post-processing.
app.sensors.nv.radar.outputBufferOnGPU#
Default Value: false
Description: Controls whether the renderer keeps the Radar return buffer on the GPU for post-processing.
rtx.materialDb.nonVisualMaterialCSV.enabled#
Default Value: false
Description: Enables non-visual materials using USD attributes.
rtx.materialDb.nonVisualMaterialSemantics.prefix#
Default Value: “omni:simready:nonvisual”
Description: Specifies the non-visual material USD attribute prefix.
rtx.rtxsensor.useHydraTimeAlways#
Default Value: true
Description: Controls whether RTX sensor models use Hydra time (
omni.timeline) when multi-tick rendering is disabled.
Python API#
Commands
Command class for creating RTX Lidar sensors. |
|
Command class for creating RTX Idealized Depth Sensors (IDSs). |
|
Command class for creating RTX Radar sensors. |
Sensors
RTX-based Lidar sensor implementation. |
Commands#
- class IsaacSensorCreateRtxLidar(*args: Any, **kwargs: Any)#
Bases:
IsaacSensorCreateRtxSensorCommand class for creating RTX Lidar sensors.
This class specializes the base RTX sensor creation for Lidar sensors, providing specific configuration and plugin settings for Lidar functionality.
- Parameters:
**kwargs – Keyword arguments passed to the parent class constructor. See IsaacSensorCreateRtxSensor for available parameters.
- class IsaacSensorCreateRtxIDS(*args: Any, **kwargs: Any)#
Bases:
IsaacSensorCreateRtxSensorCommand class for creating RTX Idealized Depth Sensors (IDSs).
This class specializes the base RTX sensor creation for IDSs, providing specific configuration and plugin settings for IDS functionality.
Sets default configuration to “idsoccupancy” if no config is provided.
- Parameters:
**kwargs – Keyword arguments passed to the parent class constructor. See IsaacSensorCreateRtxSensor for available parameters.
- class IsaacSensorCreateRtxRadar(*args: Any, **kwargs: Any)#
Bases:
IsaacSensorCreateRtxSensorCommand class for creating RTX Radar sensors.
This class specializes the base RTX sensor creation for Radar sensors, providing specific configuration and plugin settings for Radar functionality.
RTX Radar requires Motion BVH to be enabled. If Motion BVH is not enabled, the command will warn the user and not create the prim.
Sensors#
- class LidarRtx(
- prim_path: str,
- name: str = 'lidar_rtx',
- position: ndarray | None = None,
- translation: ndarray | None = None,
- orientation: ndarray | None = None,
- config_file_name: str | None = None,
- **kwargs: Any,
Bases:
BaseSensorRTX-based Lidar sensor implementation.
This class provides functionality for creating and managing RTX-based Lidar sensors in Isaac Sim. It supports various annotators and writers for data collection and visualization.
The sensor can be configured with different parameters and supports both point cloud and flat scan data collection.
- Parameters:
prim_path – Path to the USD prim for the Lidar sensor.
name – Name of the Lidar sensor.
position – Global position of the sensor as [x, y, z].
translation – Local translation of the sensor as [x, y, z].
orientation – Orientation quaternion as [w, x, y, z].
config_file_name – Path to the configuration file for the sensor.
**kwargs – Additional keyword arguments for sensor configuration.
- Raises:
Exception – If the prim at prim_path is not an OmniLidar or does not have the required API.
- add_azimuth_data_to_frame() None#
Add azimuth data to the current frame.
This method is deprecated as of Isaac Sim 5.0 and will be removed in a future release.
- add_azimuth_range_to_frame() None#
Add azimuth range data to the current frame.
This method is deprecated as of Isaac Sim 5.0. Use attach_annotator(‘IsaacComputeRTXLidarFlatScan’) instead.
- add_elevation_data_to_frame() None#
Add elevation data to the current frame.
This method is deprecated as of Isaac Sim 5.0 and will be removed in a future release.
- add_horizontal_resolution_to_frame() None#
Add horizontal resolution data to the current frame.
This method is deprecated as of Isaac Sim 5.0. Use attach_annotator(‘IsaacComputeRTXLidarFlatScan’) instead.
- add_intensities_data_to_frame() None#
Add intensities data to the current frame.
This method is deprecated as of Isaac Sim 5.0. Use attach_annotator(‘IsaacComputeRTXLidarFlatScan’) instead.
- add_linear_depth_data_to_frame() None#
Add linear depth data to the current frame.
This method is deprecated as of Isaac Sim 5.0. Use attach_annotator(‘IsaacComputeRTXLidarFlatScan’) instead.
- add_point_cloud_data_to_frame() None#
Add point cloud data to the current frame.
This method is deprecated as of Isaac Sim 5.0. Use attach_annotator(‘IsaacComputeRTXLidarFlatScan’) instead.
- add_range_data_to_frame() None#
Add range data to the current frame.
This method is deprecated as of Isaac Sim 5.0 and will be removed in a future release.
- apply_visual_material(
- visual_material: VisualMaterial,
- weaker_than_descendants: bool = False,
Apply visual material to the held prim and optionally its descendants.
- Parameters:
visual_material – Visual material to be applied to the held prim. Currently supports PreviewSurface, OmniPBR and OmniGlass.
weaker_than_descendants – True if the material shouldn’t override the descendants materials, otherwise False.
Example:
>>> from isaacsim.core.api.materials import OmniGlass >>> >>> # create a dark-red glass visual material >>> material = OmniGlass( ... prim_path="/World/material/glass", # path to the material prim to create ... ior=1.25, ... depth=0.001, ... thin_walled=False, ... color=np.array([0.5, 0.0, 0.0]) ... ) >>> prim.apply_visual_material(material)
- attach_annotator(
- annotator_name: Literal['IsaacComputeRTXLidarFlatScan', 'IsaacExtractRTXSensorPointCloudNoAccumulator', 'IsaacCreateRTXLidarScanBuffer', 'StableIdMap', 'GenericModelOutput'],
- **kwargs: object,
Attach an annotator to the Lidar sensor.
- Parameters:
annotator_name – Name of the annotator to attach. Must be one of: “IsaacComputeRTXLidarFlatScan”, “IsaacExtractRTXSensorPointCloudNoAccumulator”, “IsaacCreateRTXLidarScanBuffer”, “StableIdMap”, or “GenericModelOutput”.
**kwargs – Additional arguments to pass to the annotator on initialization.
Example
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.attach_annotator("IsaacComputeRTXLidarFlatScan") >>> lidar.attach_annotator("IsaacCreateRTXLidarScanBuffer")
- attach_writer(writer_name: str, **kwargs: object) None#
Attach a writer to the Lidar sensor.
- Parameters:
writer_name – Name of the writer to attach.
**kwargs – Additional arguments to pass to the writer on initialization.
Example
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.attach_writer("RtxLidarDebugDrawPointCloud")
- static decode_stable_id_mapping(
- stable_id_mapping_raw: bytes,
Decode the StableIdMap buffer into stable IDs mapped to labels.
The buffer ends with a 4-byte entry count. Each entry contains six little-endian uint32 values. The label is a UTF-8 string read from the label offset with the specified label length.
- Parameters:
stable_id_mapping_raw – The raw StableIdMap buffer bytes.
- Returns:
Dictionary mapping stable IDs to their label strings.
Example:
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.attach_annotator("StableIdMap") >>> lidar.initialize() >>> # After simulation steps... >>> frame = lidar.get_current_frame() >>> stable_id_data = frame.get("StableIdMap") >>> if stable_id_data is not None: ... mapping = LidarRtx.decode_stable_id_mapping(stable_id_data)
- detach_all_annotators() None#
Detach all annotators from the Lidar sensor.
Example
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.attach_annotator("IsaacComputeRTXLidarFlatScan") >>> lidar.attach_annotator("IsaacCreateRTXLidarScanBuffer") >>> lidar.detach_all_annotators()
- detach_all_writers() None#
Detach all writers from the Lidar sensor.
Example:
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.attach_writer("RtxLidarDebugDrawPointCloud") >>> lidar.detach_all_writers()
- detach_annotator(annotator_name: str) None#
Detach an annotator from the Lidar sensor.
- Parameters:
annotator_name – Name of the annotator to detach.
Example
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.attach_annotator("IsaacComputeRTXLidarFlatScan") >>> lidar.detach_annotator("IsaacComputeRTXLidarFlatScan")
- detach_writer(writer_name: str) None#
Detach a writer from the Lidar sensor.
- Parameters:
writer_name – Name of the writer to detach.
Example:
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.attach_writer("RtxLidarDebugDrawPointCloud") >>> lidar.detach_writer("RtxLidarDebugDrawPointCloud")
- disable_visualization() None#
Disable visualization of the Lidar point cloud data.
Example:
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.enable_visualization() >>> lidar.disable_visualization()
- enable_visualization() None#
Enable visualization of the Lidar point cloud data.
Example:
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.enable_visualization()
- get_annotators() dict#
Get all attached annotators.
- Returns:
Dictionary mapping annotator names to their instances.
Example
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.attach_annotator("IsaacComputeRTXLidarFlatScan") >>> annotators = lidar.get_annotators() >>> print(list(annotators.keys()))
- get_applied_visual_material() VisualMaterial#
Return the current applied visual material if it was applied using apply_visual_material or is one of the following materials that was already applied before: PreviewSurface, OmniPBR and OmniGlass.
- Returns:
The current applied visual material if its type is currently supported.
Example:
>>> # given a visual material applied >>> prim.get_applied_visual_material() <isaacsim.core.api.materials.omni_glass.OmniGlass object at 0x7f36263106a0>
- get_azimuth_range() tuple[float, float] | None#
Get the azimuth range of the Lidar sensor.
This method is deprecated as of Isaac Sim 5.0. Use the azimuth_range attribute in the current frame instead.
- Returns:
Azimuth range as (min_azimuth, max_azimuth) if available, None otherwise.
- get_current_frame() dict#
Get the current frame data from the Lidar sensor.
- Returns:
Dictionary containing the current frame data including rendering time, frame number, and any attached annotator data.
Example
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.initialize() >>> frame_data = lidar.get_current_frame() >>> print(frame_data["rendering_time"])
- get_default_state() XFormPrimState#
Get the default prim states (spatial position and orientation).
- Returns:
An object that contains the default state of the prim (position and orientation).
Example:
>>> state = prim.get_default_state() >>> state <isaacsim.core.utils.types.XFormPrimState object at 0x7f33addda650> >>> >>> state.position [-4.5299529e-08 -1.8347054e-09 -2.8610229e-08] >>> state.orientation [1. 0. 0. 0.]
- get_depth_range() tuple[float, float] | None#
Get the depth range of the Lidar sensor.
This method is deprecated as of Isaac Sim 5.0. Use the depth_range attribute in the current frame instead.
- Returns:
The (min_depth, max_depth) depth range if available, None otherwise.
- get_horizontal_fov() float | None#
Get the horizontal field of view of the Lidar sensor.
This method is deprecated as of Isaac Sim 5.0. Use the horizontal_fov attribute in the current frame instead.
- Returns:
The horizontal field of view value if available, None otherwise.
- get_horizontal_resolution() float | None#
Get the horizontal resolution of the Lidar sensor.
This method is deprecated as of Isaac Sim 5.0. Use the horizontal_resolution attribute in the current frame instead.
- Returns:
The horizontal resolution value if available, None otherwise.
- get_local_pose() tuple[ndarray, ndarray]#
Get prim’s pose with respect to the local frame (the prim’s parent frame).
- Returns:
First index is the position in the local frame (with shape (3, )). Second index is quaternion orientation (with shape (4, )) in the local frame.
Example:
>>> # if the prim is in position (1.0, 0.5, 0.0) with respect to the world frame >>> position, orientation = prim.get_local_pose() >>> position [0. 0. 0.] >>> orientation [0. 0. 0.]
- get_local_scale() ndarray#
Get prim’s scale with respect to the local frame (the parent’s frame).
- Returns:
Scale applied to the prim’s dimensions in the local frame. shape is (3, ).
Example:
>>> prim.get_local_scale() [1. 1. 1.]
- get_num_cols() int | None#
Get the number of columns in the Lidar scan.
This method is deprecated as of Isaac Sim 5.0. Use the num_cols attribute in the current frame instead.
- Returns:
The number of columns if available, None otherwise.
- get_num_rows() int | None#
Get the number of rows in the Lidar scan.
This method is deprecated as of Isaac Sim 5.0. Use the num_rows attribute in the current frame instead.
- Returns:
The number of rows if available, None otherwise.
- static get_object_ids(obj_ids: ndarray) list[int]#
Get Object IDs from the GenericModelOutput object ID buffer.
The buffer is converted to a list of dtype uint128 with stride 16 bytes. Each uint128 is a unique stable ID for a prim in the scene, which can be used to look up the prim path in the map provided by the StableIdMap annotator.
- Parameters:
obj_ids – The object ID buffer. Can be a uint8 array with stride 16, a uint32 array with stride 4, or a uint64 array with stride 2.
- Returns:
The object IDs as a list of uint128.
- Raises:
ValueError – If obj_ids has an unsupported dtype.
Example:
>>> import numpy as np >>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.attach_annotator("IsaacCreateRTXLidarScanBuffer") >>> lidar.initialize() >>> # After simulation steps... >>> frame = lidar.get_current_frame() >>> scan_buffer = frame.get("IsaacCreateRTXLidarScanBuffer") >>> if scan_buffer is not None: ... object_ids = LidarRtx.get_object_ids(scan_buffer["objectId"])
- get_render_product_path() str | None#
Get the path to the render product used by the Lidar.
- Returns:
Path to the render product, or None if not initialized.
Example
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> render_product_path = lidar.get_render_product_path()
- get_rotation_frequency() float | None#
Get the rotation frequency of the Lidar sensor.
This method is deprecated as of Isaac Sim 5.0. Use the rotation_frequency attribute in the current frame instead.
- Returns:
The rotation frequency value if available, None otherwise.
- get_visibility() bool#
Get the visibility of the prim in stage.
- Returns:
True if the prim is visible in stage. False otherwise.
Example:
>>> # get the visible state of a visible prim on the stage >>> prim.get_visibility() True
- get_world_pose() tuple[ndarray, ndarray]#
Get prim’s pose with respect to the world’s frame.
- Returns:
First index is the position in the world frame (with shape (3, )). Second index is quaternion orientation (with shape (4, )) in the world frame.
Example:
>>> # if the prim is in position (1.0, 0.5, 0.0) with respect to the world frame >>> position, orientation = prim.get_world_pose() >>> position [1. 0.5 0. ] >>> orientation [1. 0. 0. 0.]
- get_world_scale() ndarray#
Get prim’s scale with respect to the world’s frame.
- Returns:
Scale applied to the prim’s dimensions in the world frame. shape is (3, ).
Example:
>>> prim.get_world_scale() [1. 1. 1.]
- get_writers() dict#
Get all attached writers.
- Returns:
Dictionary mapping writer names to their instances.
Example
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.attach_writer("RtxLidarDebugDrawPointCloud") >>> writers = lidar.get_writers() >>> print(list(writers.keys()))
- initialize(physics_sim_view: Any = None) None#
Initialize the Lidar sensor and register update, stage, and timeline callbacks.
- Parameters:
physics_sim_view – Physics simulation view.
- is_paused() bool#
Check if the Lidar sensor is paused.
- Returns:
True if the sensor is paused, False otherwise.
Example:
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.initialize() >>> lidar.pause() >>> is_paused = lidar.is_paused() >>> print(is_paused) True
- is_valid() bool#
Check if the prim path has a valid USD Prim at it.
- Returns:
True if the current prim path corresponds to a valid prim in stage. False otherwise.
Example:
>>> # given an existing and valid prim >>> prims.is_valid() True
- is_visual_material_applied() bool#
Check if there is a visual material applied.
- Returns:
True if there is a visual material applied. False otherwise.
Example:
>>> # given a visual material applied >>> prim.is_visual_material_applied() True
- static make_add_remove_deprecated_attr(
- deprecated_attr: str,
Create deprecated add/remove attribute methods.
This internal helper creates deprecated methods that log warnings when called.
- Parameters:
deprecated_attr – Name of the deprecated attribute to create methods for.
- Returns:
Method functions for adding and removing the deprecated attribute.
- pause() None#
Pause data acquisition for the Lidar sensor.
Example:
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.initialize() >>> lidar.pause()
- remove_azimuth_data_to_frame() None#
Remove azimuth data from the current frame.
This method is deprecated as of Isaac Sim 5.0 and will be removed in a future release.
- remove_azimuth_range_to_frame() None#
Remove azimuth range data from the current frame.
This method is deprecated as of Isaac Sim 5.0. Use detach_annotator(‘IsaacComputeRTXLidarFlatScan’) instead.
- remove_elevation_data_to_frame() None#
Remove elevation data from the current frame.
This method is deprecated as of Isaac Sim 5.0 and will be removed in a future release.
- remove_horizontal_resolution_to_frame() None#
Remove horizontal resolution data from the current frame.
This method is deprecated as of Isaac Sim 5.0. Use detach_annotator(‘IsaacComputeRTXLidarFlatScan’) instead.
- remove_intensities_data_to_frame() None#
Remove intensities data from the current frame.
This method is deprecated as of Isaac Sim 5.0. Use detach_annotator(‘IsaacComputeRTXLidarFlatScan’) instead.
- remove_linear_depth_data_to_frame() None#
Remove linear depth data from the current frame.
This method is deprecated as of Isaac Sim 5.0. Use detach_annotator(‘IsaacComputeRTXLidarFlatScan’) instead.
- remove_point_cloud_data_to_frame() None#
Remove point cloud data from the current frame.
This method is deprecated as of Isaac Sim 5.0. Use detach_annotator(‘IsaacComputeRTXLidarFlatScan’) instead.
- remove_range_data_to_frame() None#
Remove range data from the current frame.
This method is deprecated as of Isaac Sim 5.0 and will be removed in a future release.
- resume() None#
Resume data acquisition for the Lidar sensor.
Example:
>>> from isaacsim.sensors.rtx import LidarRtx >>> lidar = LidarRtx(prim_path="/World/Lidar") >>> lidar.initialize() >>> lidar.pause() >>> lidar.resume()
- set_default_state( ) None#
Set the default state of the prim (position and orientation), that will be used after each reset.
- Parameters:
position – Position in the world frame of the prim. shape is (3, ). If None, the position is left unchanged.
orientation – Quaternion orientation in the world frame of the prim. Quaternion is scalar-first (w, x, y, z). shape is (4, ). If None, the orientation is left unchanged.
Example:
>>> # configure default state >>> prim.set_default_state(position=np.array([1.0, 0.5, 0.0]), orientation=np.array([1, 0, 0, 0])) >>> >>> # set default states during post-reset >>> prim.post_reset()
- set_local_pose( ) None#
Set prim’s pose with respect to the local frame (the prim’s parent frame).
Warning
This method will change (teleport) the prim pose immediately to the indicated value
- Parameters:
translation – Translation in the local frame of the prim (with respect to its parent prim). shape is (3, ).
orientation – Quaternion orientation in the local frame of the prim. quaternion is scalar-first (w, x, y, z). shape is (4, ).
Hint
This method belongs to the methods used to set the prim state
Example:
>>> prim.set_local_pose(translation=np.array([1.0, 0.5, 0.0]), orientation=np.array([1., 0., 0., 0.]))
- set_local_scale(
- scale: Sequence[float] | None,
Set prim’s scale with respect to the local frame (the prim’s parent frame).
- Parameters:
scale – Scale to be applied to the prim’s dimensions. shape is (3, ).
Example:
>>> # scale prim 10 times smaller >>> prim.set_local_scale(np.array([0.1, 0.1, 0.1]))
- set_visibility(visible: bool) None#
Set the visibility of the prim in stage.
- Parameters:
visible – Flag to set the visibility of the USD prim in stage.
Example:
>>> # make prim not visible in the stage >>> prim.set_visibility(visible=False)
- set_world_pose( ) None#
Set prim’s pose with respect to the world’s frame.
Warning
This method will change (teleport) the prim pose immediately to the indicated value
- Parameters:
position – Position in the world frame of the prim. shape is (3, ).
orientation – Quaternion orientation in the world frame of the prim. quaternion is scalar-first (w, x, y, z). shape is (4, ).
Hint
This method belongs to the methods used to set the prim state
Example:
>>> prim.set_world_pose(position=np.array([1.0, 0.5, 0.0]), orientation=np.array([1., 0., 0., 0.]))
- property name: str | None#
Name given to the prim when instantiating it.
- Returns:
Name given to the prim when instantiating it. Otherwise None.
- property non_root_articulation_link: bool#
Whether the prim is a non-root articulation link.
- Returns:
True if the prim itself is a non-root link.
Example:
>>> # for a wrapped articulation (where the root prim has the Physics Articulation Root property applied) >>> prim.non_root_articulation_link False
- property prim: pxr.Usd.Prim#
USD Prim object that this object holds.
- Returns:
USD Prim object that this object holds.
- property prim_path: str#
Prim path in the stage.
- Returns:
Prim path in the stage.
Omnigraph Nodes#
The extension exposes the following Omnigraph nodes: