We develop new data structures for solving various visibility and intersection problems about a simple polygon <italic>P</italic> on <italic>n</italic> vertices. Among our results are a simple <italic>&Ogr;</italic>(<italic>n</italic> log <italic>n</italic>) algorithm for computing the illuminated subpolygon of <italic>P</italic> from a luminous side, and an <italic>&Ogr;</italic>(log <italic>n</italic>) algorithm for determining which side of <italic>P</italic> is first hit by a bullet fired from a point in a certain direction. The latter method requires preprocessing on <italic>P</italic> which takes time <italic>&Ogr;</italic>(<italic>n</italic> log <italic>n</italic>) and space <italic>&Ogr;</italic>(<italic>n</italic>). Our main new tool in attacking these problems is geometric duality on the two-sided plane.
[1]
Bernard Chazelle,et al.
Filtering search: A new approach to query-answering
,
1983,
24th Annual Symposium on Foundations of Computer Science (sfcs 1983).
[2]
Bernard Chazelle,et al.
A theorem on polygon cutting with applications
,
1982,
23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).
[3]
Leonidas J. Guibas,et al.
A kinetic framework for computational geometry
,
1983,
24th Annual Symposium on Foundations of Computer Science (sfcs 1983).
[4]
Leonidas J. Guibas,et al.
Optimal Point Location in a Monotone Subdivision
,
1986,
SIAM J. Comput..