Rotational polygon containment and minimum enclosure using only robust 2D constructions.

*(English)* Zbl 0930.68152
Summary: An algorithm and a robust floating point implementation is given for rotational polygon containment: given polygons ${P}_{1},{P}_{2},{P}_{3},\cdots ,{P}_{k}$ and a container polygon $C$, find rotations and translations for the $k$ polygons that place them into the container without overlapping. A version of the algorithm and implementation also solves rotational minimum enclosure: given a class $\mathcal{C}$ of container polygons, find a container $C\in \mathcal{C}$ of minimum area for which containment has a solution. The minimum enclosure is approximate: it bounds the minimum area between $(1-\epsilon )A$ and $A$. Experiments indicate that finding the minimum enclosure is practical for $k=2,3$ but not larger unless optimality is sacrificed or angles ranges are limited (although these solutions can still be useful). Important applications for these algorithm to industrial problems are discussed. The paper also gives practical algorithms and numerical techniques for robustly calculating polygon set intersection, Minkowski sum, and range intersection: the intersection of a polygon with itself as it rotates through a range of angles. In particular, it introduces nearest pair rounding, which allows all these calculations to be carried out in rounded floating point arithmetic.

##### MSC:

68U05 | Computer graphics; computational geometry |