Python API#

create_conveyor_belt(
stage: pxr.Usd.Stage,
conveyor_prim: pxr.Usd.Prim,
prim_name: str = 'ConveyorBeltGraph',
) pxr.Usd.Prim#

Create a conveyor belt action graph on a rigid body prim.

Creates an action graph containing OnPlaybackTick, IsaacConveyor, and ReadVariable nodes wired to the given prim. If the prim does not already have a rigid body API, the function walks up the hierarchy to find one or applies RigidBodyAPI, CollisionAPI, and PhysxSurfaceVelocityAPI. For UsdGeomMesh prims it additionally applies UsdPhysics.MeshCollisionAPI with the convexHull approximation, because PhysX rejects the default meshSimplification (triangle mesh) approximation on dynamic bodies and emits an error per parse otherwise. Non-mesh primitives (Cube/Sphere/Cylinder/Capsule) resolve to their analytic collision shapes and do not need (or accept) MeshCollisionAPI.

Parameters:
  • stage – The USD stage.

  • conveyor_prim – The rigid body prim to apply the conveyor belt to.

  • prim_name – Name for the conveyor belt graph prim.

Returns:

The created conveyor node prim.