curobo.cuda_robot_model.usd_kinematics_parser module
- class UsdKinematicsParser(
- usd_path: str,
- flip_joints: List[str] = [],
- flip_joint_limits: List[str] = [],
- usd_robot_root: str = 'robot',
- tensor_args: TensorDeviceType = TensorDeviceType(device=device(type='cuda', index=0), dtype=torch.float32, collision_geometry_dtype=torch.float32, collision_gradient_dtype=torch.float32, collision_distance_dtype=torch.float32),
- extra_links: Dict[str, LinkParams] | None = None,
Bases:
KinematicsParser
An experimental kinematics parser from USD. NOTE: A more complete solution will be available in a future release. Current implementation does not account for link geometry transformations after a joints.
- property robot_prim_root
- build_link_parent()
Build a map of parent links to each link in the kinematic tree.
NOTE: Use this function to fill self._parent_map.
- get_link_parameters( ) LinkParams
Get Link parameters from usd stage.
NOTE: USD kinematics “X” axis joints map to “Z” in URDF. Specifically, uniform token physics:axis = “X” value only matches “Z” in URDF. This is because of usd files assuming Y axis as up while urdf files assume Z axis as up.
- Parameters:
- Returns:
obtained link parameters.
- Return type:
- _get_joint_transform(
- prim: Prim,
- _get_from_extra_links(
- link_name: str,
- get_links_for_joint(
- prim: Prim,
Get all link prims from the given joint prim.
Note
This assumes that the body0_rel_targets and body1_rel_targets are configured such that the parent link is specified in body0_rel_targets and the child links is specified in body1_rel_targets.