An intersection algorithm for disk B-spline curves

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, t...

Full description

Saved in:
Bibliographic Details
Main Authors: Ao, Xuefeng, Fu, Qian, Wu, Zhongke, Wang, Xingce, Zhou, Mingquan, Chen, Quan, Seah, Hock Soon
Other Authors: School of Computer Science and Engineering
Format: Article
Language:English
Published: 2020
Subjects:
Online Access:https://hdl.handle.net/10356/141397
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
id sg-ntu-dr.10356-141397
record_format dspace
spelling sg-ntu-dr.10356-1413972020-06-08T05:19:54Z An intersection algorithm for disk B-spline curves Ao, Xuefeng Fu, Qian Wu, Zhongke Wang, Xingce Zhou, Mingquan Chen, Quan Seah, Hock Soon School of Computer Science and Engineering Engineering::Computer science and engineering Intersection Algorithm Disk B-spline Curve 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 Bézier curves (DBCs). Therefore the problem of computing intersections of the DBSCs is converted into computing intersection of two DBCs. Then, the disk Bézier 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 Bézier 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. 2020-06-08T05:19:54Z 2020-06-08T05:19:54Z 2018 Journal Article Ao, X., Fu, Q., Wu, Z., Wang, X., Zhou, M., Chen, Q., & Seah, H. S. (2018). An intersection algorithm for disk B-spline curves. Computers and Graphics, 70, 99-107. doi:10.1016/j.cag.2017.07.021 0097-8493 https://hdl.handle.net/10356/141397 10.1016/j.cag.2017.07.021 2-s2.0-85026470059 70 99 107 en Computers and Graphics © 2017 Elsevier Ltd. All rights reserved.
institution Nanyang Technological University
building NTU Library
country Singapore
collection DR-NTU
language English
topic Engineering::Computer science and engineering
Intersection Algorithm
Disk B-spline Curve
spellingShingle Engineering::Computer science and engineering
Intersection Algorithm
Disk B-spline Curve
Ao, Xuefeng
Fu, Qian
Wu, Zhongke
Wang, Xingce
Zhou, Mingquan
Chen, Quan
Seah, Hock Soon
An intersection algorithm for disk B-spline curves
description 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 Bézier curves (DBCs). Therefore the problem of computing intersections of the DBSCs is converted into computing intersection of two DBCs. Then, the disk Bézier 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 Bézier 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.
author2 School of Computer Science and Engineering
author_facet School of Computer Science and Engineering
Ao, Xuefeng
Fu, Qian
Wu, Zhongke
Wang, Xingce
Zhou, Mingquan
Chen, Quan
Seah, Hock Soon
format Article
author Ao, Xuefeng
Fu, Qian
Wu, Zhongke
Wang, Xingce
Zhou, Mingquan
Chen, Quan
Seah, Hock Soon
author_sort Ao, Xuefeng
title An intersection algorithm for disk B-spline curves
title_short An intersection algorithm for disk B-spline curves
title_full An intersection algorithm for disk B-spline curves
title_fullStr An intersection algorithm for disk B-spline curves
title_full_unstemmed An intersection algorithm for disk B-spline curves
title_sort intersection algorithm for disk b-spline curves
publishDate 2020
url https://hdl.handle.net/10356/141397
_version_ 1681056345635160064