Authors
Xiaorui Chen, Sara McMains
Publication date
2005/1/1
Conference
International Design Engineering Technical Conferences and Computers and Information in Engineering Conference
Volume
4739
Pages
565-575
Description
In this paper we present a simple new algorithm to offset multiple, non-overlapping polygons with arbitrary holes that makes use of winding numbers. Our algorithm constructs an intermediate “raw offset curve” as input to the tessellator routines in the OpenGL Utility library (GLU), which calculates the winding number for each connected region. By construction, the invalid loops of our raw offset curve bound areas with non-positive winding numbers and thus can be removed by using the positive winding rule implemented in the GLU tessellator. The proposed algorithm takes O((n + k)logn) time and O(n + k) space, where n is the number of vertices in the input polygon and k is the number of self-intersections in the raw offset curve. The implementation is extremely simple and reliably produces correct and logically consistent results.
Total citations
200720082009201020112012201320142015201620172018201920202021202220232024111535598545145
Scholar articles
X Chen, S McMains - … Conferences and Computers and Information in …, 2005