Skip to content

novaphy.SceneBuilderEngine

High-level scene build orchestrator. Consumes parsed URDF / USD asset data and produces a finalized NovaPhy Model plus per-element metadata (link / joint / shape names, source paths). Use this when the partner application needs to round-trip names and references back into NovaPhy; for purely programmatic scenes prefer ModelBuilder directly.

Methods

Method Description
build_from_urdf(urdf_model, options=UrdfImportOptions())SceneBuildResult Build a NovaPhy scene from parsed URDF data.
build_from_openusd(stage)SceneBuildResult Build a NovaPhy scene from parsed USD stage data.

Example

import novaphy

# URDF path
parser = novaphy.UrdfParser()
data   = parser.parse_file("robot.urdf")

opts = novaphy.UrdfImportOptions()
opts.floating_base = True
opts.collapse_fixed_joints = True

engine = novaphy.SceneBuilderEngine()
result = engine.build_from_urdf(data, opts)

model = result.model
print("warnings:", result.warnings)
print("root link:", result.metadata.root_link_name)

# USD path
stage   = novaphy.OpenUsdImporter().import_file("scene.usda")
result2 = engine.build_from_openusd(stage)

Notes

  • The engine is stateless across calls; reuse a single instance for an entire batch import.
  • build_from_urdf returns immediately with a populated SceneBuildResult.warnings list when the URDF has features NovaPhy does not yet implement (e.g. transmissions). No exceptions are raised for soft incompatibilities.

See Also