concepts.benchmark.manip_tabletop.pybullet_tabletop_base.pybullet_tabletop.TableTopEnv#

class TableTopEnv[source]#

Bases: BulletEnvBase

TableTopEnv is a environment for manipulating tools in a 3D but table-top-only environment. So there is only minimal amount of 3D information involved.

The environment will be simulated by pybullet.

Methods

add_bar(size_2d, thickness, location_2d[, ...])

add_box(size, location_2d[, name, static, ...])

add_cliport_workspace()

add_container(size_2d, depth, location_2d[, ...])

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_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)

list_ocrtoc_objects()

list_shape_net_core_objects()

list_ycb_simplified_objects()

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)[source]#
Parameters:
__new__(**kwargs)#
add_bar(size_2d, thickness, location_2d, name='bar-shape', *, static=False, quat=(0, 0, 0, 1))[source]#
Parameters:
Return type:

int

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)[source]#
Parameters:
Return type:

int

add_cliport_workspace()[source]#
add_container(size_2d, depth, location_2d, name='container', *, static=True, color_rgba=None, quat=None)[source]#
Parameters:
Return type:

int

add_igibson_object_by_category(category, location_3d, scale=1.0, name=None, *, urdf_file=None, static=False, quat=(0, 0, 0, 1))#
Parameters:
add_l_shape(size1_2d, size2_2d, thickness, location_2d, name='l-shape', *, static=False, quat=(0, 0, 0, 1))[source]#
Parameters:
Return type:

int

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))[source]#
Parameters:
Return type:

int

add_ocrtoc_object(identifier, location_3d, scale=1.0, name=None, *, static=False, quat=(0, 0, 0, 1))#
Parameters:
add_plate(scale, location_2d, name='plate', *, static=False, z_height=0.0)[source]#
Parameters:
Return type:

int

add_region(size_2d, location_2d, name='region', *, color_rgba=(0.5, 0.5, 0.5, 1))[source]#

Add a visual-only region indicator to the environment.

Parameters:
Returns:

the body id of the region.

Return type:

int

add_robot(robot='panda', pos=None, quat=None, name=None, robot_kwargs=None)[source]#

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:

int

add_shape_net_core_object(synset_identifier, model_identifier, location_3d, scale=1.0, name=None, *, static=False, quat=(0, 0, 0, 1))#
Parameters:
add_t_shape(size1_2d, size2_2d, thickness, location_2d=None, name='t-shape', *, static=False, pos=None, quat=(0, 0, 0, 1))[source]#

Add a T-shape object to the environment.

Parameters:
Return type:

int

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))[source]#
Parameters:
Return type:

int

add_thin_plate(scale, location_2d, name='plate', *, static=False, z_height=0.0)[source]#
Parameters:
Return type:

int

add_workspace(large=False)[source]#

Add a table-top workspace to the environment.

Returns:

the body id of the collision shape of the body.

Parameters:

large (bool)

Return type:

int

add_workspace_boundary(x_range, y_range, z_range, name='workspace-boundary')[source]#

Add a workspace boundary to the environment.

Parameters:
Return type:

int

add_ycb_simplified_object(identifier, location_3d, scale=1.0, name=None, *, static=False, quat=(0, 0, 0, 1))#
Parameters:
find_igibson_object_by_category(category)#
Parameters:

category (str)

Return type:

List[str]

get_support(body_id, return_name=True)[source]#
Parameters:
Return type:

List[str | int]

initialize_shapenet_core_loader(shapenet_dir)#
Parameters:

shapenet_dir (str)

list_ocrtoc_objects()#
Return type:

List[str]

list_shape_net_core_objects()#
Return type:

Dict[str, Dict[str, Any]]

list_ycb_simplified_objects()#
Return type:

List[str]

reset()[source]#
Return type:

None

restore()[source]#

Restore the environment to the last saved state.

Return type:

None

seed(seed)#
Parameters:

seed (int)

set_default_debug_camera(distance=1.5)[source]#

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 igibson_root: str#
property np_random: RandomState#
property ocrtoc_root: str#
property p#
property shapenet_core_loader: ShapeNetCoreLoader#
property w#
property world#
property ycb_simple_root: str#