Page 25 - 2024F
P. 25
18 UEC Int’l Mini-Conference No.53
Figure 7: Intersection algorithm for Bézier
curves using the subdivision method [9].
Figure 6: Curvature estimation of Bézier curves the method begins by constructing bounding
using the circumcircle of sampled points [8].
boxes around the Bézier curves using their con-
trol points. These bounding boxes are used
where B (t) and B (t) are the x- and y- to quickly eliminate cases where curves do not
′
′
x
y
components of B (t), and B (t) and B (t) are overlap, reducing unnecessary calculations. For
′
′′
′′
y
x
the x- and y-components of B (t). overlapping cases, the curves are recursively sub-
′′
If calculated directly according to the defini- divided using the De Casteljau algorithm to re-
tion, it involves multiple derivations and mul- fine their shape until the curves can be approxi-
tiplication and division operations for different mated as line segments to compute the intersec-
variables, which not only results in a long com- tion. This method efficiently balances computa-
putation time but also leads to precision loss. tional cost and precision.
The curvature κ can also be defined as the
reciprocal of the radius of the curvature circle 2.6 System Implementation
R, and estimating curvature using the radius is
computationally more efficient [8]. To approx- The proposed methodology is implemented in
a system developed using Python. The system
imate the curvature, we compute the radius of
a circle that passes through three equidistant combines SciPy for optimization routines and
points on the curve and derive the curvature as Qt for GUI design and visualization rendering.
its reciprocal. By sampling a sufficient number The system enables users to:
of points along the curve, we can effectively ap- • Import data and interactively edit points
proximate the maximum curvature. Our obser- and control points with background;
vations show that this method reduces computa-
tion time to approximately one-fourth compared • Adjust optimization weights for multiple
to directly using equation 7. factors and run the optimization algorithm;
• Export the results including control points
2.5.2 The Calculation of Intersections of and LineSets graphic.
Bézier Curves
This allows users to easily make high-quality
Solving for the intersections of Bézier curves LineSets drawings for real-world applications.
is critical in optimization of multi-curve lay-
out. However, this task can be computation-
ally intensive and difficult to solve analytically 3 Evaluations
in most cases because of the mathematical prop-
erties of Bézier curves. To address this, we To assess the effectiveness of the proposed opti-
adopt the geographic subdivision method [9]. As mization approach, we conducted experiments
Bézier curves have the property of always being on randomly generated point sets.The small-
within the convex hull of their control points, scale dataset comprises three point sets (24