Example #1
0
def object_in_grabber(body, role, object_list):
    body_pos = coord.b2v_pos(body.get_pos())
    body_angle =  coord.b2v_angle(body.get_angle()) # degrees
    for obj in object_list:
        obj_pos = coord.b2v_pos(obj.get_pos())
        mass, angle = vis.distance2mass(body_pos, body_angle, obj_pos)
        if mass and angle:
            dist = vis.mass2distance(mass)
            if dist <= DIST_THRESHOLD and abs(angle) <= ANGLE_THRESHOLD:
                return True
    return False
Example #2
0
def build_vi_object_data(body, role, object_list):
    message = []
    body_pos = coord.b2v_pos(body.get_pos())
    body_angle =  coord.b2v_angle(body.get_angle()) # degrees
    for obj in object_list: # loop through all the objects on the play ground
        objects = {}
        obj_pos = coord.b2v_pos(obj.get_pos())
        mass, angle = vis.distance2mass(body_pos, body_angle, obj_pos)
        if mass and angle: # if the object is recognized by the vision
            dist = vis.mass2distance(mass)
            objects['object_type'] = obj.name
            objects['distance'] = dist
            objects['angle'] = angle
            message.append(objects)
    return message