mani_skill.utils.structs.Articulation#
- class mani_skill.utils.structs.Articulation(_objs: List[T], _scene_idxs: torch.Tensor, scene: ManiSkillScene, links: List[Link], links_map: Dict[str, Link], root: Link, joints: List[ArticulationJoint], joints_map: Dict[str, ArticulationJoint], active_joints: List[ArticulationJoint], active_joints_map: Dict[str, ArticulationJoint], name: str = None, initial_pose: Pose = None, merged: bool = False, _cached_joint_target_indices: Dict[int, torch.Tensor] = <factory>, _net_contact_force_queries: Dict[Tuple, physx.PhysxGpuContactBodyImpulseQuery] = <factory>)[source]#
Wrapper around physx.PhysxArticulation objects
Methods
__init__(_objs, _scene_idxs, scene, links, ...)compute_passive_force(*args, **kwargs)create_from_physx_articulations(...[, ...])Create a managed articulation object given a list of physx articulations.
create_pinocchio_model()find_joint_by_name(arg0)find_link_by_name(arg0)get_active_joints()get_collision_meshes([to_world_frame, ...])Returns the collision mesh of each managed articulation object.
get_dof()get_drive_targets()get_drive_velocities()get_first_collision_mesh([to_world_frame])Returns the collision mesh of the first managed articulation object.
get_first_visual_mesh([to_world_frame])Returns the visual mesh of the first managed articulation object.
get_joint_target_indices(joint_indices)get_joints()get_link_incoming_joint_forces()Returns the incoming joint forces, referred to as spatial forces, for each link, with shape (N, M, 6), where N is the number of environments and M is the number of links.
get_links()get_name()get_net_contact_forces(link_names)Get net contact forces for several links together.
get_net_contact_impulses(link_names)Get net contact impulses for several links together.
get_pose()get_qf()get_qlimits()get_qpos()get_qvel()get_root()get_root_angular_velocity()get_root_linear_velocity()get_root_pose()get_state()get_visual_meshes([to_world_frame, first_only])Returns the visual mesh of each managed articulation object.
merge(articulations[, name, merge_links])Merge a list of articulations into a single articulation for easy access of data across multiple possibly different articulations.
set_joint_drive_targets(targets[, joints, ...])Set drive targets on active joints.
set_joint_drive_velocity_targets(targets[, ...])Set drive velocity targets on active joints.
set_pose(arg0)set_qf(qf)set_qpos(arg1)set_qvel(qvel)set_root_angular_velocity(velocity)set_root_linear_velocity(velocity)set_root_pose(pose)set_state(state[, env_idx])Attributes
devicedofdrive_targetsThe current drive targets of the active joints.
drive_velocitiesThe current drive velocity targets of the active joints.
fixed_root_linkReturns a boolean tensor of whether the root link is fixed for each parallel articulation
initial_poseThe initial pose of this articulation
max_dofthe max DOF out of all managed objects.
mergedwhether or not this articulation object is a merged articulation where it is managing many articulations with different dofs.
nameName of this articulation
posepxThe physx system objects managed by this dataclass are working on
qaccqfqlimitsqposqvelroot_angular_velocityroot_linear_velocityroot_poselinksList of Link objects
links_mapMaps link name to the Link object
rootThe root Link object
jointsList of Joint objects
joints_mapMaps joint name to the Joint object
active_jointsList of active Joint objects, referencing elements in self.joints
active_joints_mapMaps active joint name to the Joint object, referencing elements in self.joints
sceneThe ManiSkillScene object that manages the sub-scenes this dataclasses's objects are in