def __init__(self, obj, under_obj): super(self.__class__, self).__init__(arg_info(currentframe())) self.conditions = {Clear(obj), ArmEmpty(), On(obj, under_obj)} self.effects = { Holding(obj), Clear(under_obj), ~Clear(obj), ~ArmEmpty(), ~On(obj, under_obj) }
def __init__(self, obj): super(self.__class__, self).__init__(arg_info(currentframe())) add_operator_transitions( self, { ('on', obj): ('table', False), ('clear', obj): (True, None), 'holding': (False, obj), })
def __init__(self, name, env_file=None, camera_trans=CAMERA_TRANS, object_names=[], floor_object_names=[], # TODO - list which objects can be grasped in what ways/constrained table_names=[], sink_names=[], stove_names=[], regions=[], start_holding=False, start_stackings={}, start_constrained={}, goal_config=None, goal_holding=None, goal_poses={}, goal_regions={}, goal_stackings={}, goal_constrained={}, goal_cleaned=[], goal_cooked=[], known_poses=None, initial_poses=None, grasps=None): for k, v in arg_info(currentframe(), ignore=['self']).items(): setattr(self, k, v)
def __init__(self, obj): super(self.__class__, self).__init__(arg_info(currentframe())) add_operator_transitions(self, { ('on', obj): (None, 'table'), 'holding': (obj, False), })