Re2l: an Efficient Output-Sensitive Algorithm for Computing Boolean Operations on Circular-Arc Polygons and Its Applications.
Zhi-Jie Wang,Xiao Lin,Mei-E Fang,Bin Yao,Yong Peng,Haibing Guan,Minyi Guo
DOI: https://doi.org/10.1016/j.cad.2016.07.004
IF: 3.652
2016-01-01
Computer-Aided Design
Abstract:The boundaries of conic polygons consist of conic segments or second degree curves. The conic polygon has two degenerate or special cases: the linear polygon and the circular-arc polygon. The natural problem - Boolean operations on linear polygons - has been extensively studied. Surprisingly, (almost) no article focuses on the problem of Boolean operations on circular-arc polygons, yet this potentially has many applications. This implies that if there is a targeted solution for Boolean operations on circular-arc polygons, it should be favourable for potential users. In this article, we close the gap by devising a concise data structure and then developing a targeted algorithm called RE2L. Our method is simple, easy-to-implement, but without loss of efficiency. Given two circular-arc polygons with m and n edges respectively, our method runs in O(m + n + (1 + k) log I) time, using O(m + n + k) space, where k is the number of intersections, and 1 is the number of related edges (defined in Section 5). Our algorithm has the power to approximate to linear complexity when k and I are small. The superiority of the proposed algorithm is also validated through empirical study. In particular, our method is of independent interest and we show that it can be easily extended to compute Boolean operations of other types of polygons. (C) 2016 Elsevier Ltd. All rights reserved.