“Polygon comparison using a graph representation” by Weiler

  • ©Kevin J. Weiler




    Polygon comparison using a graph representation



    All of the information necessary to perform the polygon set operations (union, intersection, and difference) and therefore polygon clipping can be generated by a single application of a process called polygon comparison. This process accepts two or more input polygons and generates one or more polygons as output. These output polygons contain unique homogenous areas, each falling within the domain of one or more input polygons. Each output polygon is classified by the list of input polygons in which its area may be found. The union contour of all input is also generated, completing all of the information necessary to perform the polygon set operations. This paper introduces a polygon comparison algorithm which features reduced complexity due to its use of a graph data representation. The paper briefly introduces some of the possible approaches to the general problem of polygon comparison including the polygon set and clipping problems. The new algorithm is then introduced and explained in detail. The algorithm is sufficiently general to compare sets of concave polygons with holes. More than two polygons can be compared at one time; all information for future comparisons of subsets of the original input polygon sets is available from the results of the initial application of the process. The algorithm represents polygons using a graph of the boundaries of the polygons. These graphs are imbedded in a two dimensional geometric space. The use of the graph representation simplifies the comparison process considerably by eliminating many special cases from explicit consideration. Polygon operations like the ones described above are useful in a variety of application areas, especially those which deal with problems involving two dimensional or projected two dimensional geometric areas. Examples include VLSI circuit design, cartographic and demographic applications, and polygon clipping for graphic applications such as viewport clipping, hidden surface and line removal, detailing, and shadowing.


    1. Braid, Hilyard, and Stroud. Stepwise Construction of Polyhedra in Geometric Modelling. Tech. Rept. 100, CAD group, University of Cambridge Computer Laboratory, October, 1978.
    2. Baumgart. A Polyhedron Representation for Computer Vision. National Computer Conference, 1975, pp. 589-596.
    3. Baumgart. Winged Edge Polyhedron Representation. Tech. Rept. CS-320, Stanford Artificial Intelligence Laboratory, October, 1972.
    4. Eastman and Weiler. Geometric Modeling using the Euler Operators. First Annual Conference on Computer Graphics in CAD/CAM Systems, May, 1979, pp. 248-259.
    5. Eastman and Yessios. An Efficient Algorithm for Finding the Union, Intersection, and Differences of Spatial Domains. Tech. Rept. 31, Institute of Physical Planning, Carnegie-Mellon University, September, 1972.
    6. Sutherland and Hodgman. “Reentrant Polygon Clipping.” CACM 17, 1 (January 1974), 32-42.
    7. Sutherland, Sproull, and Schumacker. “A Characterization of Ten Hidden Surface Algorithms.” Computing Surveys 6, 1 (March 1974).
    8. Turner, J. An Algorithm for Doing Set Operations on Two and Three Dimensional Spatial Objects. Architecture Research Laboratory, University of Michigan, 1977.
    9. Weiler and Atherton. Hidden Surface Removal using Polygon Clipping. SIGGRAPH 77 Proceedings, SIGGRAPH, Summer, 1977, pp. 214-222.
    10. Weiler. Hidden Surface Removal using Polygon Clipping. Master Th., Cornell University, January 1978.

ACM Digital Library Publication: