pylabrobot.resources.Container

Contents

pylabrobot.resources.Container#

class pylabrobot.resources.Container(name: str, size_x: float, size_y: float, size_z: float, material_z_thickness: float | None = None, max_volume: float | None = None, category: str | None = None, model: str | None = None, compute_volume_from_height: Callable[[float], float] | None = None, compute_height_from_volume: Callable[[float], float] | None = None)#

Bases: Resource

A container is an abstract base class for a resource that can hold liquid.

Attributes

material_z_thickness

name

Get the name of this resource.

Methods

__init__(name, size_x, size_y, size_z[, ...])

Create a new container.

assign_child_resource(resource, location[, ...])

Assign a child resource to this resource.

center([x, y, z])

Get the center of this resource.

centers([xn, yn, zn])

Get equally spaced points in the x, y, and z directions.

compute_height_from_volume(liquid_volume)

Compute the height of liquid in a container relative to the container's bottom from the volume of the liquid.

compute_volume_from_height(height)

Compute the volume of liquid in a container from the height of the liquid relative to the bottom of the container.

copy()

deregister_did_assign_resource_callback(callback)

Remove a callback that will be called after a resource is assigned to this resource.

deregister_did_unassign_resource_callback(...)

Remove a callback that will be called after a resource is unassigned from this resource.

deregister_state_update_callback(callback)

Remove a callback that will be called when the state of the resource changes.

deregister_will_assign_resource_callback(...)

Remove a callback that will be called before a resource is assigned to this resource.

deregister_will_unassign_resource_callback(...)

Remove a callback that will be called before a resource is unassigned from this resource.

deserialize(data)

Deserialize a resource from a dictionary.

get_absolute_location([x, y, z])

Get the absolute location of this resource, probably within the pylabrobot.resources.Deck.

get_absolute_rotation()

Get the absolute rotation of this resource.

get_all_children()

Recursively get all children of this resource.

get_anchor(x, y, z)

Get a relative location within the resource.

get_resource(name)

Get a resource by name.

get_size_x()

get_size_y()

get_size_z()

load_all_state(state)

Load state for this resource and all children.

load_from_json_file(json_file)

Loads resources from a JSON file.

load_state(state)

Load state for this resource only.

load_state_from_file(fn)

Load the state of this resource and all children from a JSON file.

register_did_assign_resource_callback(callback)

Add a callback that will be called after a resource is assigned to this resource.

register_did_unassign_resource_callback(callback)

Add a callback that will be called after a resource is unassigned from this resource.

register_state_update_callback(callback)

Register a callback that will be called when the state of the resource changes.

register_will_assign_resource_callback(callback)

Add a callback that will be called before a resource is assigned to this resource.

register_will_unassign_resource_callback(...)

Add a callback that will be called before a resource is unassigned from this resource.

rotate([x, y, z])

Rotate counter-clockwise by the given number of degrees.

rotated([x, y, z])

Return a copy of this resource rotated by the given number of degrees.

save(fn[, indent])

Save a resource to a JSON file.

save_state_to_file(fn[, indent])

Save the state of this resource and all children to a JSON file.

serialize()

Serialize this resource.

serialize_all_state()

Serialize the state of this resource and all children.

serialize_state()

Serialize the state of this resource only.

unassign()

Unassign this resource from its parent.

unassign_child_resource(resource)

Unassign a child resource from this resource.

Parameters: