Jump to content

Connect SuperML | Leeroopedia MCP: Equip your AI agents with best practices, code verification, and debugging knowledge. Powered by Leeroo — building Organizational Superintelligence. Contact us at founders@leeroo.com.

Implementation:ARISE Initiative Robosuite LidObject

From Leeroopedia
Knowledge Sources
Domains Robotics, Simulation, MJCF_Modeling
Last Updated 2026-02-15 07:00 GMT

Overview

Lid is a composite object that generates a square lid with a simple box handle on top, suitable for container covering and manipulation tasks.

Description

The Lid class extends CompositeObject to procedurally generate a flat rectangular lid with a raised handle. The lid consists of two box geoms: a flat top plate and a smaller handle positioned above it. The total height of the object is the sum of the lid thickness and handle height, with both components positioned relative to the center.

The top plate can be rendered as semi-translucent (RGBA alpha = 0.3 when transparent=True, which is the default) or opaque with either solid colors or realistic dark wood textures. The handle always uses either the specified RGBA color or the dark wood texture, and is created with double the base density (density * 2) to provide a lower center of mass that keeps the lid stable. The default lid density is 250 kg/m^3, lighter than most other objects.

The handle_geoms property provides access to the properly name-prefixed handle geometry name, which is useful for detecting robotic grasps on the handle. The lid size defaults to 30cm x 30cm with 1cm thickness, and the handle defaults to 2cm x 8cm x 3cm. The "WoodDark" material is used for textured rendering.

Usage

Use Lid for tasks involving covering or uncovering containers, such as lifting a lid off a pot or placing a cover on a bin. The transparent default makes it easy to see what is underneath during development and debugging.

Code Reference

Source Location

Signature

class Lid(CompositeObject):
    def __init__(
        self,
        name,
        lid_size=(0.3, 0.3, 0.01),
        handle_size=(0.02, 0.08, 0.03),
        transparent=True,
        friction=None,
        density=250.0,
        use_texture=True,
        rgba=(0.2, 0.1, 0.0, 1.0),
    ):

Import

from robosuite.models.objects.composite.lid import Lid

I/O Contract

Inputs

Name Type Required Description
name str Yes Name of this Lid object
lid_size tuple(3) No (length, width, thickness) of the lid plate. Default: (0.3, 0.3, 0.01)
handle_size tuple(3) No (thickness, length, height) of the handle. Default: (0.02, 0.08, 0.03)
transparent bool No If True, lid plate is semi-translucent. Default: True
friction tuple(3) or None No Friction values (sliding, torsional, rolling). Default: None
density float No Density value for the lid plate. Default: 250.0 (handle uses 2x)
use_texture bool No If True, use realistic wood textures. Default: True
rgba tuple(4) or None No RGBA values when not using textures. Default: (0.2, 0.1, 0.0, 1.0)

Outputs

Name Type Description
Lid instance CompositeObject Lid object with flat plate and raised handle
handle_geoms list[str] List containing the name-prefixed handle geom name

Usage Examples

from robosuite.models.objects.composite.lid import Lid

# Create a default transparent lid
lid = Lid(name="pot_lid")

# Create a solid opaque lid with custom dimensions
lid = Lid(
    name="box_lid",
    lid_size=(0.2, 0.2, 0.015),
    handle_size=(0.03, 0.06, 0.04),
    transparent=False,
    density=300.0,
)

# Access handle geometry names for grasp detection
handle_names = lid.handle_geoms

Related Pages

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment