concepts.benchmark.manip_tabletop.pybullet_tabletop_base.pybullet_tabletop.SimpleTableTopEnv#

class SimpleTableTopEnv[source]#

Bases: TableTopEnv

A simple table-top environment that overrides two methods.

  • _reset_scene() is the method to be implemented by the subclass. This function will be called by reset(). 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 the WorldSaver.save() method, so that the scene can be restored using restore().

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

int

add_cliport_workspace()#
add_container(size_2d, depth, location_2d, name='container', *, static=True, color_rgba=None, quat=None)#
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))#
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))#
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)#
Parameters:
Return type:

int

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:
Returns:

the body id of the region.

Return type:

int

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:

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

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

int

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

int

add_workspace(large=False)#

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')#

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)#
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]#
restore()#

Restore the environment to the last saved state.

Return type:

None

seed(seed)#
Parameters:

seed (int)

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 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#