File size: 717 Bytes
7399b6f
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
"""Put an object away inside a roofed fixture: grasp it, then slide it in horizontally."""
from .base import approach_and_grasp, place_into


def solve(env, obj, target, arm="right", jaw="auto", max_gap=0.045, approach=(0.0, -1.0),
          standoff=0.16, tilt_deg=0.0):
    a = env.arms[arm]
    res, ext = approach_and_grasp(env, a, obj, jaw=jaw, max_gap=max_gap)
    if not res.ok:
        env.recorder.phase = "ABORT: the object was never grasped"
        return {"grasped": False, "reason": res.reason}
    env._last_placed = obj
    err = place_into(env, a, target, float(ext[2])/2.0, approach=approach, standoff=standoff,
                     tilt_deg=tilt_deg)
    return {"grasped": True, "place_err": err}