A Variational Framework for Computing Geodesic Paths on Sweep Surfaces
Graphical abstract
Introduction
Geodesics, as a tool to measure the distance between two points on a 2-manifold Riemannian surface, encode all the intrinsic properties of the surface, and thus have fundamental importance in digital geometry processing. Due to the nice feature that the geodesic curvature is zero everywhere, geodesics are useful in many special industrial design applications. In this paper, we consider the geodesic problem on sweep surfaces, which is a fundamental geometric operation in the manufacturing process of filament winding.
The distinguished feature of sweep surfaces lies in that they are given by a pair of parameters and each parameter has clear geometric meaning. Particularly, determines a position of the guide curve while gives a generatrix curve when goes from to . It is computationally inefficient and inaccurate if one transforms the parametric form into a polygonal mesh and then extracts a geodesic on the discrete mesh surface. This motivates us to directly compute the geodesic on the parameter domain.
In the past research, the Runge–Kutta method [1], [2], [3], [4] is a popular choice for computing geodesic paths on a sweep surface. In its essence, it serves as a numeric method to solve the Euler–Lagrange equations. If given “one point, one direction”, it incrementally determines a sequence of points, approximating the real geodesic path. In this case, it may produce a long geodesic helical curve as long as one traces the path one point after the other. If users input two points, the Runge–Kutta method needs to solve a linear system, and thus is not easy to generate an -round helical curve between two given points, which limits its use in the scenario of filament winding. Besides, it is hard to control the step size to achieve a guaranteed accuracy requirement. Therefore, in this paper, we propose a new variational framework to deal with the difficulties.
For a piecewise smooth curve , its length can be measured by where is the metric tensor defined on the Riemannian surface and becomes identity if considered in the Euclidean space. It is proved that the minima of the following energy functional can also be used to define geodesics [5]. Furthermore, is independent of curve parameterization, and thus guarantees existence, uniqueness, and regularity of minimizers. Here, by ‘uniqueness’, we mean that among all the possible parameterization configurations, only the arc-length parameterization (or scaled by a factor) can be the minimizer of Eq. (2). Our approach for computing geodesics on sweep surfaces is based on the interesting property.
In this paper, we first discuss the parametric form of sweep surface from a different perspective. Observing that a small segment of the sweep volume can also be understood by rotating a 2D sectorial generatrix curve around the guide curve . We assume that sweep surfaces have a parametric form , where defines the sectorial generatrix curve segment at the angle of while , defines the circumferential closed curve. The definition enables one to define and separately. We give the definition detailedly in Section 3.1. It is worth noting that our definition only applies to a special class of sweep surfaces.
Suppose that the source point and the target point are given. Initially, users can specify an arbitrary polyline as the input. By approximating the unknown geodesic path with vertices ( intermediate points are variable), we use to define the objective function, which is the same with the above-mentioned energy functional defined in Eq. (2) but operates in the discrete setting. Driven by the objective function, we repeatedly evolve the path until the points are equally spaced along the path and minimize the total length. Besides, we have to overcome three additional difficulties. First, we consider various configurations of : (1) is a constant, independent of and , (2) depends on only , independent of , and (3) depends on both and . Second, the objective function must be represented by and so that the optimization can be conducted in the parameter domain. Finally, we need to compute the gradients w.r.t. and , and use them to speed up the optimization. Our variational framework inherits a curve shortening technique. Therefore, it can be naturally extended to support the query of an -round geodesic helical curve, which is much different from the Runge–Kutta method. It is worth noting that the base surface of our interest is a sweep surface, instead of a general parametric surface, since it is hard to precisely define an -round spiral curve on a general surface. The by-product of this framework is that the yielding point sequence is equally spaced and able to accurately characterize how the real geodesic path winds along the surface, which is crucial to the motion planning in filament winding.
Our contributions include
- 1.
We propose a variational framework to compute geodesics on sweep surfaces. Different from the Runge–Kutta method, our method inherits the spirit of curve shortening, and is able to report a geodesic path or an -round geodesic helical curve when users specify the two endpoints (rather than “one point, one direction”).
- 2.
We formulate the energy functional in the parameter domain. Furthermore, we deduce the analytic gradients for three situations of the radius function. By feeding the analytic gradients into the L-BFGS solver, our algorithm has a super-linear convergence rate.
- 3.
We establish a relationship between the number of intermediate points and the absolute error, which facilitates direct error control. Particularly, we observe that the absolute error decreases quadratically w.r.t. the number of inserted points.
Section snippets
Related works
There is a large body of literature on the geodesic problem. In this paper, we review only the most relevant works on computing geodesic paths. We divide them into two categories, depending on the type of the base surface, i.e., a smooth surface with an analytic form or a discrete polygonal surface.
Definition of sweep surfaces
Sweep surfaces are generally defined by moving a sectional curve along a guide path, and thus can be represented by , where is the guide path and gives the shape of the sectional curve at the point . Its geometric explanation is that the sectional curve continuously varies with the base point on the guide path.
In this paper, we understand the sweep surfaces from a different perspective. Let the parametric form be , where
Discrete setting
As mentioned above, we intend to minimize the following energy functional [5]: In the following, we discuss the formulation in the discrete setting. Let be a sequence of points on the sweep surface. The first point and the last point are fixed while the other points are moveable. In fact, each point has a corresponding parameter pair . On the parameter domain, the points are connected into a 2D polyline. By mapping the 2D
Evaluation
We implemented our algorithm in Microsoft Visual C++ 2015, without using any additional numeric packages. All the experiments were conducted on a computer with Intel(R) Core(TM) i7-9700K CPU 3.60 GHz and 8 GB memory.
We list a set of experimental results to show that our algorithm can compute shortest paths on sweep surfaces with various guide curves; See Fig. 6. We shall evaluate the proposed algorithm in different indicators in next subsections.
Applications
This section presents two interesting applications of the proposed variational framework, including geodesic helix for filament winding and path evolution in animation simulation.
Conclusion
We develop a method for computing geodesic paths on sweep surfaces. Unlike the existing discrete geodesic algorithms that apply to polygonal meshes, we formulate a variational problem by taking advantage of the parametric representation of sweep surfaces. To solve the optimization efficiently, we represent the geodesic path by a polyline with vertices, where is a user-specified parameter for accuracy control. Instead of using total length, our energy functional is the sum of squared lengths
Declaration of Competing Interest
The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.
Acknowledgments
The authors would like to thank the anonymous reviewers for their valuable comments and suggestions. This work is supported by National Natural Science Foundation of China (61772016, 62002190, 61772318, 62072284), NSF of Shandong Province, China (ZR2020MF036), and Singapore MOE grants (RG20/20 and T2EP20220-0014).
References (40)
- et al.
A numerical study for computation of geodesic curves
Appl Math Comput
(2005) - et al.
A geometric method for computation of geodesic on parametric surfaces
Comput Aided Geom Design
(2015) - et al.
Fast geodesics computation with the phase flow method
J Comput Phys
(2006) Geodesic-like curves on parametric surfaces
Comput Aided Geom Design
(2010)- et al.
Computing geodesics on triangular meshes
Comput Grap
(2005) - et al.
Efficiently determining a locally exact shortest path on polyhedral surfaces
Comput Aided Des
(2007) - et al.
An optimization-driven approach for computing geodesic paths on triangle meshes
Comput Aided Des
(2017) - et al.
DE-Path: A differential-evolution-based method for computing energy-minimizing paths on surfaces
Comput Aided Des
(2019) - et al.
A survey of geodesic paths on 3D surfaces
Comput Geometry
(2011) Computing frames along a trajectory
Comput Aided Geom Design
(1989)