concepts.simulator.pybullet.manipulation_utils.contact_samplers#

Functions

collision_free_pos(robot, pos[, quat, ...])

Check whether there is a qpos at the givne pose that is collision free.

collision_free_qpos(robot, qpos[, exclude, ...])

Check whether the given qpos is collision free.

collision_free_qpos_trajectory(robot, ...[, ...])

gen_grasp_trajectory(grasp_pos, grasp_quat)

Given the name of the object, the grasp pose, generate a trajectory of 6D poses that the robot should follow to grasp the object.

gen_pivot_trajectory(pivot_point, ...)

Given the name of the object, the pivot pose, the pivot axis, and the pivot angle, generate a trajectory of 6D poses that the robot should follow to pivot the object.

gen_push_trajectory(push_pos, push_dir, ...)

Given the name of the object, the push pose, the push direction, and the push distance, generate a trajectory of 6D poses that the robot should follow to push the object.

get_single_contact_normal(robot, object_id, ...)

mesh_line_intersect(t_mesh, ray_origin, ...)

Intersects a ray with a mesh.

qpos_trajectory_from_poses(robot, trajectory)

Given a list of 6D poses, generate a list of qpos that the robot should follow to follow the trajectory.

qpos_trajectory_from_poses_pybullet(robot, ...)

rotate_point_along_axis(point, axis, angle)

Rotate the point along the axis by the given angle.

sample_grasp(robot, object_id, gripper_distance)

Given the name of the object, sample a 6D grasp pose.

sample_indirect_push_with_support(robot, ...)

Sample a push of the target object using the tool object.

sample_pivot_with_support(robot, object_id, ...)

sample_placement(robot, target_id, support_id)

Sample a placement of the target object on the support object.

sample_points_uniformly(pcd, nr_points[, ...])

sample_push_with_support(robot, object_id, ...)

visualize_pivot_trajectory(robot, object_id, ...)

Classes

GraspParameter

GraspParameter(point1: numpy.ndarray, normal1: numpy.ndarray, point2: numpy.ndarray, normal2: numpy.ndarray, ee_pos: numpy.ndarray, ee_quat: numpy.ndarray, qpos: numpy.ndarray)

IndirectPushParameter

IndirectPushParameter(target_push_pos: numpy.ndarray, target_push_dir: numpy.ndarray, tool_pos: numpy.ndarray, tool_quat: numpy.ndarray, tool_point_pos: numpy.ndarray, tool_point_normal: numpy.ndarray, ee_pos: numpy.ndarray = None, ee_quat: numpy.ndarray = None, prepush_distance: float = 0.05, push_distance: float = 0.1)

PivotParameter

PivotParameter(pivot_point: numpy.ndarray, pivot_normal: numpy.ndarray, pivot_quat: numpy.ndarray, pivot_axis_pos: numpy.ndarray, pivot_axis_dir: numpy.ndarray, pivot_angle: float)

PlacementParameter

PlacementParameter(target_pos: numpy.ndarray, target_quat: numpy.ndarray, support_normal: numpy.ndarray)

PushParameter

PushParameter(push_pos: numpy.ndarray, push_dir: numpy.ndarray, distance: float, ee_quat: numpy.ndarray)