An intersection algorithm for disk B-spline curves

2018 
In this paper, we propose a method for finding all 2D intersection regions between disk B-spline curves (DBSCs), which is very crucial for DBSC’s wide applications such as computer calligraphy, computer 2D animations, and non-photorealistic rendering. As a DBSC represents a region on a plane, the intersection of two DBSCs is a 2D region. To determine the region, the key is to compute the intersection points of the boundaries of two DBSCs. In our algorithm, the boundary of a DBSC is decomposed into four components: the upper boundary, the lower boundary, the start arc, and the end arc. The intersection of two DBSCs can be converted into the intersections between these four components. The main difficulty is to find the intersection involving the upper and lower boundaries of the two DBSCs, as they are variable offsets from the skeletons of the DBSC that are B-spline curves. In our approach, first the DBSCs are subdivided into several disk Bezier curves (DBCs). Therefore the problem of computing intersections of the DBSCs is converted into computing intersection of two DBCs. Then, the disk Bezier clipping method is proposed to exclude regions that have no intersection for the intersection of the two DBCs. In the case of where there is an intersection, we calculate the comparatively rough intersection to be used as initial values for later refinement through the disk Bezier clipping method. Besides, high precision (up to 10e−15) intersections are achieved by using the Newton’s iteration, which is quadratic convergent. The experimental results demonstrate that our algorithm can very efficiently compute all intersections between DBSCs with high precision. Our main contributions in this paper are as follows. First, for the first time, we give the direct parametric expression of DBSC’s boundary, which can be simply and conveniently used to compute the properties of DBSC’s boundary. Second, our proposed approach of calculating high-accuracy intersections of DBSCs makes DBSC a flexible and effective stroke representation that can be applied to further research such as corresponding computation, automatically coloring, region detection and so on.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    24
    References
    5
    Citations
    NaN
    KQI
    []