concepts.benchmark.manip_tabletop.pybullet_tabletop_base.pybullet_tabletop.SimpleTableTopEnv#
- class SimpleTableTopEnv[source]#
Bases:
TableTopEnvA simple table-top environment that overrides two methods.
_reset_scene()is the method to be implemented by the subclass. This function will be called byreset(). This method should return a dictionary of metainfo of the objects in the environment. After the metainfo is returned, the environment will be saved by theWorldSaver.save()method, so that the scene can be restored usingrestore().
Methods
add_bar(size_2d, thickness, location_2d[, ...])add_box(size, location_2d[, name, static, ...])add_container(size_2d, depth, location_2d[, ...])add_existing_robot(robot)add_igibson_object_by_category(category, ...)add_l_shape(size1_2d, size2_2d, thickness, ...)add_l_shape_with_tip(size1_2d, size2_2d, ...)add_ocrtoc_object(identifier, location_3d[, ...])add_plate(scale, location_2d[, name, ...])add_region(size_2d, location_2d[, name, ...])Add a visual-only region indicator to the environment.
add_robot([robot, pos, quat, name, robot_kwargs])Add a robot to the environment.
add_shape_net_core_object(synset_identifier, ...)add_t_shape(size1_2d, size2_2d, thickness[, ...])Add a T-shape object to the environment.
add_t_shape_with_tip(size1_2d, size2_2d, ...)add_table(x_range, y_range, surface_z[, name])add_thin_plate(scale, location_2d[, name, ...])add_workspace([large])Add a table-top workspace to the environment.
add_workspace_boundary(x_range, y_range, z_range)Add a workspace boundary to the environment.
add_ycb_simplified_object(identifier, ...[, ...])find_igibson_object_by_category(category)get_support(body_id[, return_name])initialize_shapenet_core_loader(shapenet_dir)reset()restore()Restore the environment to the last saved state.
seed(seed)set_default_debug_camera([distance])Set the default debug camera of the environment.
Attributes
- __init__(client=None, is_gui=True, seed=1234)#
- Parameters:
client (BulletClient | None)
is_gui (bool)
seed (int)
- __new__(**kwargs)#
- add_bar(size_2d, thickness, location_2d, name='bar-shape', *, static=False, quat=(0, 0, 0, 1))#
- add_box(size, location_2d, name='box', *, static=False, z_height=0, mass=0.2, lateral_friction=1.0, color_rgba=(1, 0.34, 0.34, 1.), quat=None)#
- Parameters:
- Return type:
- add_cliport_workspace()#
- add_container(size_2d, depth, location_2d, name='container', *, static=True, color_rgba=None, quat=None)#
- Parameters:
- Return type:
- add_igibson_object_by_category(category, location_3d, scale=1.0, name=None, *, urdf_file=None, static=False, quat=(0, 0, 0, 1))#
- add_l_shape(size1_2d, size2_2d, thickness, location_2d, name='l-shape', *, static=False, quat=(0, 0, 0, 1))#
- Parameters:
- Return type:
- add_l_shape_with_tip(size1_2d, size2_2d, size3_2d, thickness, location_2d, name='l-shape-with-tip', *, static=False, quat=(0, 0, 0, 1))#
- add_ocrtoc_object(identifier, location_3d, scale=1.0, name=None, *, static=False, quat=(0, 0, 0, 1))#
- add_plate(scale, location_2d, name='plate', *, static=False, z_height=0.0)#
- add_region(size_2d, location_2d, name='region', *, color_rgba=(0.5, 0.5, 0.5, 1))#
Add a visual-only region indicator to the environment.
- Parameters:
size_2d (Tuple[float, float] | List[float] | ndarray) – the size of the region.
location_2d (Tuple[float, float] | List[float] | ndarray) – the location of the region, asssumed to be on the table (z = 0).
name (str) – the name of the region.
color_rgba (Tuple[float, float, float, float] | List[float] | ndarray) – the color of the region.
- Returns:
the body id of the region.
- Return type:
- add_robot(robot='panda', pos=None, quat=None, name=None, robot_kwargs=None)#
Add a robot to the environment.
- Parameters:
robot (str) – the type of the robot. Currently only
['ur5', 'panda']are supported.pos (Tuple[float, float, float] | List[float] | ndarray | None) – the initial position of the robot. If not given, the robot will be placed at the origin.
quat (Tuple[float, float, float, float] | List[float] | ndarray | None) – the initial orientation of the robot. If not given, the robot will be placed in the default orientation.
name (str | None) – the name of the robot.
robot_kwargs (dict | None) – the additional keyword arguments for the robot.
- Returns:
the body id of the robot.
- Return type:
- add_shape_net_core_object(synset_identifier, model_identifier, location_3d, scale=1.0, name=None, *, static=False, quat=(0, 0, 0, 1))#
- add_t_shape(size1_2d, size2_2d, thickness, location_2d=None, name='t-shape', *, static=False, pos=None, quat=(0, 0, 0, 1))#
Add a T-shape object to the environment.
- Parameters:
size1_2d (Tuple[float, float] | List[float] | ndarray) – the size of the “handle” part of the T-shape.
size2_2d (Tuple[float, float] | List[float] | ndarray) – the size of the “top bar” part of the T-shape.
thickness (float) – the thickness of the T-shape.
location_2d (Tuple[float, float] | List[float] | ndarray | None)
name (str)
static (bool)
pos (Tuple[float, float, float] | List[float] | ndarray | None)
quat (Tuple[float, float, float, float] | List[float] | ndarray)
- Return type:
- add_t_shape_with_tip(size1_2d, size2_2d, size3_2d, thickness, location_2d, name='t-shape-with-tip', *, static=False, quat=(0, 0, 0, 1))#
- add_table(x_range, y_range, surface_z, name='table')#
- add_thin_plate(scale, location_2d, name='plate', *, static=False, z_height=0.0)#
- add_workspace(large=False)#
Add a table-top workspace to the environment.
- add_workspace_boundary(x_range, y_range, z_range, name='workspace-boundary')#
Add a workspace boundary to the environment.
- add_ycb_simplified_object(identifier, location_3d, scale=1.0, name=None, *, static=False, quat=(0, 0, 0, 1))#
- get_support(body_id, return_name=True)#
- restore()#
Restore the environment to the last saved state.
- Return type:
None
- set_default_debug_camera(distance=1.5)#
Set the default debug camera of the environment.
- Parameters:
distance (float)
- CLIPORT_PLANE_FILE = 'assets://cliport/plane/plane.urdf'#
- CLIPORT_WORKSPACE_FILE = 'assets://cliport/workspace/workspace.urdf'#
- PLANE_FILE = 'assets://basic/plane/plane.urdf'#
- PLANE_LARGE_FILE = 'assets://basic/plane/plane_large.urdf'#
- WORKSPACE_FILE = 'assets://basic/plane/workspace.urdf'#
- WORKSPACE_LARGE_FILE = 'assets://basic/plane/workspace_large.urdf'#
- property client: BulletClient#
- property np_random: RandomState#
- property p#
- property shapenet_core_loader: ShapeNetCoreLoader#
- property w#
- property world#