O. Aichholzer, T. Hackl, M. Korman, A. Pilz, and B. Vogtenhuber
Polygons are a paramount data structure in computational geometry. While the
complexity of many algorithms on simple polygons or polygons with holes
depends on the size of the input polygon, the intrinsic complexity of the
problems these algorithms solve is often related to the reflex vertices of
the polygon. In this paper, we give an easy-to-describe linear-time method to
replace an input polygon

by a polygon

such that (1)

contains

, (2)

has its reflex vertices at the same positions as

,
and (3) the number of vertices of

is linear in the number of reflex
vertices. Since the solutions of numerous problems on polygons (including
shortest paths, geodesic hulls, separating point sets, and Voronoi diagrams)
are equivalent for both

and

, our algorithm can be used as a
preprocessing step for several algorithms and makes their running time
dependent on the number of reflex vertices rather than on the size of

.