concepts.benchmark.manip_tabletop.paint_factory.paint_factory.PaintFactoryEnv#
- class PaintFactoryEnv[source]#
Bases:
TableTopEnv
The paint-and-sort environment. The environment contains a table with a few objects on it. There are two types of objects:
receptacles, including the paint bucket and the sorting bin.
paintable objects. Right now we only have the paintable cube.
The goal of the environment is to paint the cube with the paint bucket, and then sort the painted cube into the sorting bin.
Methods
add_bar
(size_2d, thickness, location_2d[, ...])add_bowl
(location_2d[, name, static, z, ...])add_box
(size, location_2d[, name, static, ...])add_cliport_block
(location_2d[, name, ...])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)is_relation_satisfied
(id1, id2, relation)is_relation_satisfied_in
(id1, id2)reconfigure
([nr_bowls, nr_blocks])reset
([nr_bowls, nr_blocks])restore
()Restore the environment to the last saved state.
seed
(seed)set_default_debug_camera
([distance])Set the default debug camera of the environment.
step
(pick_location, place_location, ...)step_object_name
(pick_object, place_object)Attributes
- __init__(client=None, nr_bowls=3, nr_blocks=3, *, seed=1234)[source]#
- Parameters:
client (BulletClient | None)
nr_bowls (int)
nr_blocks (int)
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_block(location_2d, name='box', *, static=False, z=0.02, color_rgba=None, quat=None)[source]#
- 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_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)
- step_object_name(pick_object, place_object, additional_pick_offset=None, additional_place_offset=None)[source]#
- 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#