Close this search box.

2D Part Orienting


2D Part Orienting

The project deals with the problem of orienting a given polygon \(P\) without the use of sensors. We focus on a method called oblivious push-plans, which means we push \(P\) using a straight arm from several different directions, and construct this series of directions such that \(P\) will always end up in the same, predetermined orientation, regardless of the orientation in which it is given to us. The project includes the implementation of several algorithms that construct valid and optimal push-plans for a given polygon \(P\), as well as a simulation program, which can be used to demonstrate how the push-plan we obtain operates on different orientations of \(P\).

A polygonal part and its radius function. The minima of the radius function correspond to normals to polygon edges that intersect the center-of-mass. The maxima correspond to tangents to polygon vertices whose normals intersect the center-of-mass.

2D Part Orienting
A polygonal part and its push function. The horizontal steps of the push function are angular intervals between two successive maxima of the radius function

2D Part Orienting
Using the overlay of the Gaussian map and the central map of \(P\) to construct the radius function of \(P\). In this case, n(ei) is immediately between d(vi) and \(d(v_i +1)\) in the overlay, and thus \(n(e_i)\) is a minimum point for the radius function, and it constitutes a step of the push function.
2D Part Orienting
Deciding whether an interval \(I_1\) of orientations can be “collapsed” into an interval \(I_2\) with a single push is done by comparing the known- angle of \(I_1\) with the fit-angle of \(I_2\). A single push suffices if and only if the former is smaller than the latter. The figure shows the known-angle (blue) and fit-angle (orange) of the interval \([d_1, d_2]\).

References & Links



  • Geva Kipper
    2D Part Orienting [pdf]
    Presentation [pdf, Hebrew]
    Code [link]


Geva Kipper
Efi Fogel
Dan Halperin

Yair Oz - Webcreator


Skip to content