novaphy.SceneBuildMetadata¶
Aggregate metadata populated by the URDF scene-build path alongside a SceneBuildResult. Captures the names, topological order, and DOF layout of every link / joint / shape that the builder emitted, so downstream sensors and exporters can address them by name instead of by raw index. The current USDA build path leaves this object default/empty.
Attributes¶
| Attribute | Description |
|---|---|
import_options |
Echo of the UrdfImportOptions used for the build (URDF path); default-initialized for USD imports. |
root_link_name |
Name of the root link of the imported articulation. |
root_body_index |
Body index of the root link inside the resulting Model. |
root_articulation_index |
Legacy/misnamed field currently populated with the root body/articulation-link ordinal; do not treat it as a Model articulation ID. |
link_names |
List of link names indexed by URDF link index. |
joint_names |
List of joint names indexed by URDF joint index. |
topological_link_order |
Flat list of link-name strings in parent-before-child order. |
articulation_link_names |
Flat list of surviving body/link names in articulation order (after optional fixed-joint collapse). |
dof_joint_names |
Per-DOF joint name (length = total nv). |
dof_qd_indices |
Per-DOF index into joint_qd (length = total nv). Lets you map a joint name back to a state slot. |
links |
List of SceneLinkMetadata. |
joints |
List of SceneJointMetadata. |
shapes |
List of SceneShapeMetadata. |
materials |
Parsed UrdfMaterial entries. |
transmissions |
Parsed UrdfTransmission entries. |
gazebo_extensions |
Parsed UrdfGazeboExtension entries. |
filtered_link_pairs |
Pairs of link names whose shape collisions were filtered out (self-collision filter, parent-child filter, etc.). |
Example¶
import novaphy
result = novaphy.SceneBuilderEngine().build_from_urdf(data)
meta = result.metadata
# Find the joint_qd slot of "elbow"
qd_slot = meta.dof_qd_indices[meta.dof_joint_names.index("elbow")]
# Walk link names in topological order.
for link_name in meta.topological_link_order:
print(link_name)