  In this paper, we present the mechanics and algorithms to compute the set of
feasible motions of an object pushed in a plane. This set is known as the
motion cone and was previously described for non-prehensile manipulation tasks
in the horizontal plane. We generalize its geometric construction to a broader
set of planar tasks, where external forces such as gravity influence the
dynamics of pushing, and prehensile tasks, where there are complex interactions
between the gripper, object, and pusher. We show that the motion cone is
defined by a set of low-curvature surfaces and provide a polyhedral cone
approximation to it. We verify its validity with 2000 pushing experiments
recorded with motion tracking system. Motion cones abstract the algebra
involved in simulating frictional pushing by providing bounds on the set of
feasible motions and by characterizing which pushes will stick or slip. We
demonstrate their use for the dynamic propagation step in a sampling-based
planning algorithm for in-hand manipulation. The planner generates trajectories
that involve sequences of continuous pushes with 5-1000x speed improvements to
equivalent algorithms.
  Video Summary -- https://youtu.be/tVDO8QMuYhc
