We describe the first algorithm to compute the outer common tangents of two disjoint simple polygons using linear time and only constant workspace. A tangent of a polygon is a line touching the polygon such that all of the polygon lies on the same side of the line. An outer common tangent of two polygons is a tangent of both polygons such that the polygons lie on the same side of the tangent. Each polygon is given as a read-only array of its corners in cyclic order. The algorithm detects if an outer common tangent does not exist, which is the case if and only if the convex hull of one of the polygons is contained in the convex hull of the other. Otherwise, two corners defining an outer common tangent are returned.
@InProceedings{abrahamsen_et_al:LIPIcs.ESA.2016.4, author = {Abrahamsen, Mikkel and Walczak, Bartosz}, title = {{Outer Common Tangents and Nesting of Convex Hulls in Linear Time and Constant Workspace}}, booktitle = {24th Annual European Symposium on Algorithms (ESA 2016)}, pages = {4:1--4:15}, series = {Leibniz International Proceedings in Informatics (LIPIcs)}, ISBN = {978-3-95977-015-6}, ISSN = {1868-8969}, year = {2016}, volume = {57}, editor = {Sankowski, Piotr and Zaroliagis, Christos}, publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik}, address = {Dagstuhl, Germany}, URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ESA.2016.4}, URN = {urn:nbn:de:0030-drops-63465}, doi = {10.4230/LIPIcs.ESA.2016.4}, annote = {Keywords: simple polygon, common tangent, optimal algorithm, constant workspace} }
Feedback for Dagstuhl Publishing