A kinetic framework for computational geometry

Extended Abstract 1. Introduction and summary We present a new framework for geometric computing in which planar curves are formed by the motions of objects that have both position and orientation. Informally, consider the motion of a car: at each instant the car is positioned at some point in the plane, and oriented with its hood facing in some direction. Together, the position and the orientation specify a state. In the new framework, curves and polygons are paths in this state space satisfying the constraint that wherever the tangent of the position component of the curve is defined, the orientation must be either the same as that tangent, or the opposite. In other words, the car may move either forwards or backwards, but it may not skid sideways. To distinguish these structures from classical curves and polygons, we call them tracings. Several important concepts can be defined fOf tracings, some familiar from differential topology, but others apparently new. These include the notions of winding number, degree, and sweep number. A general construction, known as fiber product, is used to define various operations on tracings, including convolution and multiplication. Each fiber product involves forming all pairs of states, one from each tracing, that satisfy a certain constraint Using these ideas, it is possible to recast large parts ofcomputational geometry, such as convexity, in a new and advantageous light This applies to proofs of theorems, as well as to descriptions of algorithms. Besides allowing us to recast old material, this kinetic approach has also led to a number of new algorithms that improve on the previously known bounds. For example, one algorithm computes the distance between two convex polygons in logarithmic time, while another tests if two convex polygons can disjointIy fit into a third one in linear time (no rotations allowed). A final attraction of the kinetic approach is that, after appropriately extending the plane into a new manifold, the two-sided plane, we can define a formal duality between points and lines that maintains the sense of left and right Informal notions of such a duality had previously been used in computational geometry, but now for the first time we can say in a precise sense that, for example, an algorithm for computing the convex hull of n points is also an algorithm for computing the intersection of n half-planes. It may be of interest to note that the origins of …

[1]  Jack Sklansky,et al.  Finding the convex hull of a simple polygon , 1982, Pattern Recognit. Lett..

[2]  H. Coxeter,et al.  Introduction to Geometry , 1964, The Mathematical Gazette.

[3]  Arnold L. Rosenberg,et al.  Stabbing line segments , 1982, BIT.

[4]  Tomás Lozano-Pérez,et al.  Spatial Planning: A Configuration Space Approach , 1983, IEEE Transactions on Computers.

[5]  J. Dieudonne,et al.  Encyclopedic Dictionary of Mathematics , 1979 .

[6]  G. Toussaint Solving geometric problems with the rotating calipers , 1983 .

[7]  Jan van Leeuwen,et al.  Maintenance of Configurations in the Plane , 1981, J. Comput. Syst. Sci..

[8]  David E. Muller,et al.  Finding the Intersection of n Half-Spaces in Time O(n log n) , 1979, Theor. Comput. Sci..

[9]  Jacob T. Schwartz,et al.  Finding the Minimum Distance Between Two Convex Polygons , 1981, Information Processing Letters.