# Common Tangents of Two Disjoint Polygons in Linear Time and Constant Workspace

@article{Abrahamsen2019CommonTO, title={Common Tangents of Two Disjoint Polygons in Linear Time and Constant Workspace}, author={Mikkel Abrahamsen and Bartosz Walczak}, journal={ACM Transactions on Algorithms (TALG)}, year={2019}, volume={15}, pages={1 - 21} }

We provide a remarkably simple algorithm to compute all (at most four) common tangents of two disjoint simple polygons. Given each polygon as a read-only array of its corners in cyclic order, the algorithm runs in linear time and constant workspace and is the first to achieve the two complexity bounds simultaneously. The set of common tangents provides basic information about the convex hulls of the polygons—whether they are nested, overlapping, or disjoint—and our algorithm thus also decides…

## One Citation

## References

SHOWING 1-10 OF 29 REFERENCES

### Outer Common Tangents and Nesting of Convex Hulls in Linear Time and Constant Workspace

- Computer Science, MathematicsESA
- 2016

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…

### An Optimal Algorithm for the Separating Common Tangents of Two Polygons

- Computer ScienceSoCG
- 2015

The algorithm is simple and implies an optimal algorithm for deciding if the convex hulls of two polygons are disjoint or not, which was not known to be possible in linear time and constant workspace prior to this paper.

### Computing Common Tangents Without a Separating Line

- Mathematics, Computer ScienceWADS
- 1995

Given two disjoint convex polygons in standard representations, one can compute outer common tangents in logarithmic time without first obtaining a separating line. If the polygons are not disjoint,…

### An Optimal Algorithm Computing Edge-to-Edge Visibility in a Simple Polygon

- Computer ScienceCCCG
- 2013

A new O(n)-time algorithm to compute the visible part of one edge from another edge of P , which does not alter the input and only uses O(1) variables and is therefore a constant-workspace algorithm.

### Convex hulls of finite sets of points in two and three dimensions

- Computer ScienceCACM
- 1977

The presented algorithms use the “divide and conquer” technique and recursively apply a merge procedure for two nonintersecting convex hulls to ensure optimal time complexity within a multiplicative constant.

### Memory-constrained algorithms for simple polygons

- Computer Science, MathematicsComput. Geom.
- 2013

### Compact interval trees: a data structure for convex hulls

- Computer Science, MathematicsSODA '90
- 1990

A data structure called a compact interval tree is introduced that supports common tangent computations, as well as the standard binary-search-based queries, in O(logn) time apiece and beats the lower bound for algorithms that store the polygons in independent arrays.

### Solving geometric problems with the rotating calipers

- Computer Science
- 1983

This paper shows that the diameter of a convex n-sided polygon could be computed in O(n) time using a very elegant and simple procedure which resembles rotating a set of calipers around the polygon once, and that this simple idea can be generalized in two ways.

### Dynamic planar convex hull

- Computer Science, MathematicsThe 43rd Annual IEEE Symposium on Foundations of Computer Science, 2002. Proceedings.
- 2002

The computational complexity of the dynamic convex hull problem in the planar case is determined and a lower bound on the amortized asymptotic time complexity is given that matches the performance of this data structure.