Toward Reliable Polygon Set Operations
نویسندگان
چکیده
Polygon intersection (clipping) and difference are among the most fundamental operations in computer graphics. To the uninitiated, these problems appear trivial; in fact, they are extremely difficult to perform reliably by computer. Although the graphics literature already provides algorithms for polygon set operations, they have two significant weaknesses: (1) they may fail because they are specified ambiguously for some configurations of subject polygons, and (2) small arithmetic errors, an unavoidable artifact of floating-point calculations, can cause significant aberrations in the result. This paper presents and provides the rationale for a new polygon-intersection algorithm whose input polygons may have holes and, recursively, fillers within holes, holes within fillers within holes, etc. The logical underpinnings of the algorithm enable it to tolerate arithmetic errors due to finiteprecision floating-point arithmetic. Polygon set difference is shown to be a small modification of the intersection algorithm. Researchers in computational geometry consider these and similar problems with the intention of formulating algorithms whose correctness can be assured through formal proofs. The goal of this paper, however, is practical guidance for implementation based on accessible, intuitive arguments.
منابع مشابه
Relational Specification of Surface Subdivision Algorithms
Many polygon mesh algorithms operate in a local manner, yet are formally specified using global indexing schemes. We address this discrepancy by defining a set of local operations on polygon meshes in relational, index-free terms. We also introduce the vv programming language to express these operations in a machine-readable form. We then apply vv to specify several surface subdivision algorith...
متن کاملA Computational Basis for Conic Arcs and Boolean Operations on Conic Polygons
We give an exact geometry kernel for conic arcs, algorithms for exact computation with low-degree algebraic numbers, and an algorithm for computing the arrangement of conic arcs that immediately leads to a realization of regularized boolean operations on conic polygons. A conic polygon, or polygon for short, is anything that can be obtained from linear or conic halfspaces (= the set of points w...
متن کاملA topologically robust algorithm for Boolean operations on polyhedral shapes using approximate arithmetic
We present a topologically robust algorithm for Boolean operations on polyhedral boundary models. The algorithm can be proved always to generate a result with valid connectivity if the input shape representations have valid connectivity, irrespective of the type of arithmetic used or the extent of numerical errors in the computations or input data. The main part of the algorithm is based on a s...
متن کاملDynamic Minimum Length Polygon
This paper presents a formal framework for representing all reversible polygonalizations of a digital contour (i.e. the boundary of a digital object). Within these polygonal approximations, a set of local operations is defined with given properties, e.g., decreasing the total length of the polygon or diminishing the number of quadrant changes. We show that, whatever the starting reversible poly...
متن کامل