Abstract
We present an algorithm to fair a given planar curve by a log-aesthetic curve (LAC). We show how a general LAC segment can be uniquely characterized by seven parameters and present a method of parametric approximation based on this fact. This work aims to provide tools to be used in reverse engineering for computer-aided geometric design. Finally, we show an example of usage by applying this algorithm to the data points obtained from 3D scanning a model-car roof.
Similar content being viewed by others
Avoid common mistakes on your manuscript.
1 Introduction
In 1994, Harada et al., while investigating the mental images suggested by aesthetically pleasing shapes, set up an experiment to quantitatively analyze a curve’s character from the viewpoint of the observer [6]. Their main result may be described as follows: the curves that car designers regard as aesthetically pleasing have the common property that the frequency histogram of the radius of curvature follows a piecewise linear relation in a log-log scale. An analytic formulation of those curves was provided in [13] defining what will later be called the log-aesthetic curves (LAC), which promoted theoretical and practical studies of LAC towards their use in computer-aided geometric design as indicated by Levien and Séquin [10]. In this regard, several works have been written concerning the implementation and construction of LAC with fixed boundary conditions, see for example [3, 4, 16, 18]. Furthermore, extensions to surfaces have also been considered with an emphasis on providing practical tools for industrial design, see [12]. From a different point of view, LAC have been characterized as curves that are obtained via a variational principle in the framework of similarity geometry; moreover, they can also be seen as invariant curves under the integrable flow on plane curves governed by the Burgers equation [9]. This fact was also shown to be useful in providing an integrable discretization of the LAC that preserves the underlying geometric structure [8]. These previous contributions are mainly focused on providing tools for curve generation with fixed boundary conditions. In this paper, with reverse engineering applications in mind, we provide a method to characterize a given curve by its closest LAC. Although we considered the input data to be discrete (as a sequence of points), the idea behind our algorithm can be applied to smooth input data as well. In Sect. 2, we provide the basic framework, we show how a general LAC segment can be uniquely identified by seven parameters, and we solve the inverse problem of recovering the parameters that characterize a given general LAC segment. In Sect. 3, we construct a method of parametric approximation that finds the seven parameters of a smooth LAC that is the closest, in a \(L^2\)-distance sense, to the input curve. Finally, a demonstration of the applicability of the algorithm is shown by using the data points obtained from 3D scanning a model-car roof, where we identify their underlying LAC. The works [16] and [11] are the closest to the present contribution, where similar tools to characterize the family of LAC are shown. However, [11] provides local fairing techniques to sequence of points with noise, whereas we recover globally all the parameters that characterize an LAC. Our method is based on the one presented in [1], to approximate a given planar curve by an Euler’s elastica, and on its follow-up work [5], for the discrete Euler’s elastica.
2 Log-aesthetic curve
2.1 Basic formulation
First of all, let us review some definitions regarding planar curves. Let \(\gamma (s)\in \mathbb {R}^{2}\) be a planar curve parameterized by the arc length \(s \in [0, L]\), with total length L. The tangent and normal vectors are defined by \(T(s) = \gamma '(s)\) and \(N(s) = \,\textrm{R}_{\pi \!/2}\,T(s)\), respectively, where \(\,\textrm{R}_{\pi \!/2}\,\) is a \(\pi \!/2\) counterclockwise rotation matrix and \({\text { }}'=\text {d}/\text {d}{s}\). By definition, \(\left\Vert T(s)\right\Vert = 1\), so the tangent vector is parameterized by the turning angle \(\theta (s)\), such that
namely, the angle of the tangent vector measured from the horizontal axis. The curvature is defined by \(\kappa (s) = \theta '(s)\), and the radius of curvature by \(\rho (s) = 1/\kappa (s)\).
As it is shown in [13], by considering an analytic formulation of the work by Harada et al., it can be seen that log-aesthetic curves (or simply referred to as LAC) satisfy that
for some \(\alpha \in \mathbb {R}^{}\) and \(A > 0\), where \(R=\log \rho\). Equation (2) is usually presented as the defining equation of the LAC. In this work, while interested in characterizing geometrical properties of the LAC, let us consider the following equivalent expression:
Definition 1
(Log-aesthetic curve) An arc length parameterized curve \(\gamma (s) \in \mathbb {R}^{2}\) with strictly monotonic radius of curvature is called a em log-aesthetic curve (LAC) if its curvature satisfies
for some constant \(\alpha \in \mathbb {R}^{}\).
Remark 1
Assuming that the functions are well-behaved, we have \(\frac{\text {d}^{}s}{\text {d}R^{}} = \rho /\rho '\), then (2) is rewritten as
Since \(\rho = \kappa ^{-1}\), we have from (4)
Then, the derivative of (5) gives (3).
Remark 2
Because we are considering curves with strictly monotonic radius of curvature, the turning angle function is invertible and thus it can be used to parameterize all the geometric objects. In particular, from (3) we obtain
and by defining \(u(\theta ) = \frac{\text {d}^{}}{\text {d}\theta ^{}}\log (\kappa (\theta ))\), equation (6) is equivalent to the Riccati Eq.
In the context of similarity geometry, \(u(\theta )\) is known as the similarity curvature and (7) appears when studying an integrable flow on plane curves governed by the Burgers equation, see [9].
Let us see that the parameter \(\alpha\) of a given LAC is invariant under the similarity transformations and reflections. Firstly, note that because the curvature of a planar curve is invariant under the Euclidean transformations, we only check the invariance under scale transformations and the reflections over the diagonal \(\{(x,x) \in \mathbb {R}^{2} | x \in \mathbb {R}^{}\}\). For scale transformations, consider the arc length parameterized LAC \(\gamma (s)\) satisfying (3), for some \(\alpha \in \mathbb {R}^{}\), and define \(\tilde{\gamma }(\tilde{s}) := S \gamma (\tilde{s}/S),\) where \(S > 0\). Then \(\tilde{\kappa }(\tilde{s})\), the curvature of \(\tilde{\gamma }(\tilde{s})\), is given by \(\tilde{\kappa }(\tilde{s}) = S^{-1} \kappa (\tilde{s}/S)\) and it is easy to see that it satisfies (3). For the reflections over the diagonal, note that interchanging the \(x-\) and \(y-\)component of the curve is equivalent to changing the sign of the curvature, and (3) is invariant under that change.
The fundamental theorem of planar curves states that an arc length parameterized planar curve is uniquely determined by its curvature up to Euclidean transformations. In addition, the curvature of an LAC determined by (3) has two arbitrary parameters. In view of this, we introduce the basic LAC by fixing this freedom and then we show that one can recover a general LAC by applying similarity transformations and shifting the arc length parameter of a basic LAC.
Definition 2
(Basic LAC) Let \({\xi ^{\alpha }}(s) \in \mathbb {R}^{2}\) be an arc length parameterized LAC defined over an open interval \(I \subset \mathbb {R}^{}\), such that \(\{0\} \in I\). We call \({\xi ^{\alpha }}(s)\) a basic LAC if it satisfies that
where \(\kappa (s)\) and \(\theta (s)\) are its curvature and turning angle, respectively.
Let us see a more explicit expression for the basic LAC and its related quantities. In what follows, we use the sub-index \({\xi ^{\alpha }}\), as for example \(\kappa _{\xi ^{\alpha }}\), to denote those quantities associated to their respective basic LAC. Taking the initial condition into consideration, the explicit form of the curvature is given by
Then, the turning angle is obtained from the curvature by \((\theta _{{\xi ^{\alpha }}})' = \kappa _{{\xi ^{\alpha }}}\),
Although it is not used in this work, we note that the position vector \({\xi ^{\alpha }}(s)\) can be expressed in terms of the incomplete gamma function, see for example [18]. For a basic LAC, we have that \(\kappa > 0\), which implies that \(1 + \alpha s > 0\). Then, the maximal interval \(I_\alpha \subset \mathbb {R}^{}\) on which the basic LAC can be defined is
and we assume that all basic LAC are defined over \(I_\alpha\). Finally, note that the image of \(\kappa _{\xi ^{\alpha }}\) is \(\kappa _{\xi ^{\alpha }}[I_\alpha ] = (0, \infty )\).
Proposition 1
Any LAC with \(\alpha \ne 1\) and positive decreasing curvature can be expressed as a basic LAC after applying similarity transformations and shifting the arc length parameter. In particular, if \(\gamma (s)\), \(s \in [0, L]\), is an LAC of length L, there exists a unique \(\gamma _0 \in \mathbb {R}^{2}\), \(\phi \in [0, 2\pi )\), \(S \in \mathbb {R}^{}\backslash \{0\}\), and \(s_0 \in \mathbb {R}^{}\), such that
where \({\xi ^{\alpha }}(s)\) is a basic LAC of length L/S.
Proof
For a given LAC \(\gamma (s)\), \(s \in [0, L]\) with \(\alpha \ne 1\) and positive decreasing curvature, we know that its curvature satisfies (3), which can be integrated once to obtain
for some \(A > 0\). Next, consider the curve \(\bar{\gamma }(\bar{s}) := S^{-1}\gamma (\bar{s}S)\), \(\bar{s} \in [0, L/S]\), and set \(S = A^{1/(\alpha -1)}\). Note that the curvature of \(\bar{\gamma }\) satisfies
which can be integrated to obtain
By comparing \(\bar{\kappa }\) with \(\kappa _{\xi ^{\alpha }}\) in (9), there exists a unique \(s_0 \in \mathbb {R}^{}\) such that \(\bar{\kappa }(\bar{s}) = \kappa _{{\xi ^{\alpha }}}(\bar{s} + s_0)\). From the fundamental theorem of planar curves, it follows that the curves \(\bar{\gamma }\) and \({\xi ^{\alpha }}\) are congruent up to rigid transformations, i.e.
for some \(\bar{\gamma }_0\in \mathbb {R}^{2}\) and \(\phi \in [0, 2\pi )\). Finally, we use that \(\gamma (s) = S \bar{\gamma }(s/S)\) to obtain (12) with \(\gamma _0 := S \bar{\gamma }_0\). \(\square\)
Remark 3
In the proof of Proposition 1, the scale transformation is used to change the value of A, in (13), without changing the value of \(\alpha\). However, in the case of \(\alpha = 1\) this technique cannot be exploited because it corresponds to the logarithmic spiral, which is a self-similar curve. Namely, the value of A for a given logarithmic spiral is invariant under scale transformations, thus the technique used in Proposition 1 cannot be used to recover the entire family of LAC with \(\alpha = 1\).
Remark 4
Let X be the reflection of \(\mathbb {R}^{2}\) defined by the map \((x,y) \mapsto (y,x)\). If \(\gamma (s)\), \(s \in [0, L]\), is an LAC, then also are
Moreover, their respective curvatures satisfy
which allow us to use Proposition 1 in those cases in which the curvature is not positive and decreasing, by applying one of the transformations (17) (Fig. 1).
2.2 Recovering the parameters of an LAC segment
We focus our attention on the problem of finding the parameters that uniquely identify a given LAC segment. We proceed in three steps, in which we solve several linear equations in the least-squares sense, with the objective of constructing an algorithm that can be applied to general curves. Before describing the method, let us consider the following remarks: In view of Remark 3 we omit the case \(\alpha = 1\), and for simplicity in the formulation of this method we further omit the case \(\alpha = 0\). Note that, removing these values does not hinder the quality of the algorithm, because they are only single points on the real line. At last, given an LAC segment \(\gamma (s)\), \(s \in [0, L]\), by possibly applying one of the transformations (17), we assume that its curvature is positive and decreasing.
From Proposition 1, it follows that for a given LAC segment \(\gamma (s)\), \(s \in [0, L]\), there exists a set of parameters \(\{\alpha , S, s_0, l, \phi , x_0, y_0\}\) such that
which implies, by definition of the curvature function, that
Let \(R = - \log \kappa\) and \(R_{\xi ^{\alpha }}= - \log \kappa _{\xi ^{\alpha }}\), then
Finally, from the differential Eq. (8) we have that \(\log (R_{{\xi ^{\alpha }}}') + \alpha R_{{\xi ^{\alpha }}} = 0\); hence, from (21), we obtain
Step 1: Let \(c_1 := \alpha\) and \(c_0:= (\alpha - 1) \log S\). Then, from (22), in the least squares sense we have
which leads to
and
Then, \(\alpha = c_1\) and \(S = \exp (c_0/(c_1 - 1))\). Step 2: From (9) and (20), we have that \(\kappa (s) = S^{-1} (1 + \alpha (s/S + s_0))^{-1/\alpha },\) which allows us to isolate the parameter \(s_0\) as
Then,
gives
Similarly, we compute \(s_{\textrm{end}} := L/S + s_0\) from \(\kappa ^{(3)}(s) = \kappa (L-s) = S^{-1} (1 + \alpha (s_{\textrm{end}} - s/S))^{-1/\alpha }\). In the least squares sense, we obtain
Hence,
Step 3: At this point, it rests to find the rotation and translation parameters. For the former, note that the angle function of \(\gamma\) and \({\xi ^{\alpha }}\) differ only by a constant \(\phi\), as
Thus, in the least squares sense we obtain
Finally, for the translation \((x_0, y_0)\) we solve (12) in the least squares sense,
3 Approximation of planar curves
3.1 Methodology
Now we consider the case where a general curve segment is given and we want to find an LAC segment that is the closest in a \(L^2\)-distance sense. For the applications that we have in mind, the input is regarded as a discrete curve and thus we must consider a discretization of the LAC. From Proposition 1, we know that any LAC segment with \(\alpha \ne 1\), after a possible change of parameterization or reflection (Remark 4), can be expressed as
where \({\xi ^{\alpha }}\) is a basic LAC with total length \(l := L/S\). Furthermore, \(\xi ^{}(s)\) is also rewritten as
where \(\theta _{\xi ^{\alpha }}\) is given by (10). From now on, let us consider a discretization of (35). Let \(N \in \mathbb {N}^{}\), and define
and the discrete curve \(\xi ^{\varTheta }_n \in \mathbb {R}^{2}\), \(n = 0, \dots , N-1\), such that
where we introduced the notation \(\xi ^{\varTheta }_n\) for the discrete curve that depends on the parameters
Note that the recursive expression (37) gives an approximation of \(\xi ^{}(s)\) of second order, in the sense that it satisfies
The input data for the fairing process is assumed to be a list of N two-dimensional points, which we expresses as the discrete curve
Given \(\gamma _n\), we look for \(\xi ^{\varTheta }_n\) that is the closest in a \(L^2\)-distance sense. Namely, we seek to find a set of parameters \(\varTheta ^*\) such that
with the admissible set U given by
The optimization problem is solved using the Interior Point Optimizer package (IPOPT), which for our purpose can be seen as a gradient descent-like method for nonlinear optimizations (see [15]), so we need the gradient of the objective function,
and an initial guess to start the optimization. For the gradient of (43), we have
which is computed recursively from Eq. (37), using that
with
where we denoted \(T_n\) as
Then, using that \((\theta _{\xi ^{\alpha }})' = \kappa _{\xi ^{\alpha }}\), we obtain the gradient of \(T_n\) by
where
which is obtained by direct computation from (10).
For the initial guess, denoted as
we use a discrete analogue of the three steps described in Sect. 2.2. Finally, after solving (41), the parameters of the smooth LAC that approximates the input curve are obtained as follows:
3.1.1 Initial guess pseudo-algorithm
For a given a discrete curve \(\gamma _n\), \(n = 0,\dots , N-1\), with constant step size
we compute the following quantities: A discrete analogue of the tangent vector,
a discrete analogue of the turning angle,
and a discrete analogue of the curvature,
As we are interested in approximating \(\gamma _n\) by a single LAC segment, we assume that the curve has no inflection point, implying that \(\kappa _n\) has constant sign. Furthermore, by applying a reflection or by inverting the parameterization (in analogy with Remark 4), we assume that \(\kappa _n\) is positive. After this considerations, we define
and its discrete derivative by
Remark 5
In practice, noise on the input curve \(\gamma _n\) might cause \(\kappa _n\) to change signs. In this situation, we replace (56) by
\(\varvec{\blacktriangleright }\) Parameter \(\varvec{\alpha }\) Following Step 1, we solve
Then, using that \(\bar{\alpha }= c_0\) and \(\bar{S} = \exp (c_0 / (c_1 - 1))\), we obtain
and
\(\varvec{\blacktriangleright }\) Parameter \(\varvec{s_0, z}\): From Step 2, and using that \(\bar{z} = \bar{l}/(N-1)\), we obtain
and
\(\varvec{\blacktriangleright }\) Parameter \(\varvec{\phi , x_0, y_0, h}\): Let \(\xi ^{\check{\varTheta }}_n\), \(n = 0, \dots , N-1\), be the discrete curve computed as in (37) with \(\check{\varTheta } = (0, 0, h, 0, \bar{z}, \bar{s}_{0}, \bar{\alpha })\). Then, its turning angle is \(\theta _{\xi ^{\bar{\alpha }}}(\bar{z}n + \bar{s}_0)\); hence, following Step 3, we obtain
and
Finally, we set \(\bar{h} = h\).
As a first test for this algorithm, we used synthetic data: discrete curves with constant step size based on Bézier curves. These curves were split in segments with sign preserving monotonic curvature. Then, we faired each segment to an LAC, using the previous algorithm to compute the initial guess. Some examples are shown in Fig. 2. In the next section we apply this method to real data.
3.2 Application
In order to test the fairing algorithm shown in the previous section, we characterize some simple profile lines of a model-car roof (Toyota Prius). A 3D model was obtained by measuring a model-car with a 3D laser scanner (Hexagon 8330-7, measurement accuracy of 0.078 mm). The 3D model was stored in STL (Standard Triangle/Tessellation Language) format, which encodes the geometry of the object in a triangular mesh. Using Rhinoceros 6, a computer-aided design software, we intercepted the 3D model with vertical planes, see Fig. 3. Finally, we projected the space curves into the plane and processed the discrete point to obtain a planar discrete curve with constant step size. We observed that the curvature of the keylines is highly irregular, as a product of the measuring technique employed. To reduce the noise, we proceeded as follows: Let the curve \(\gamma _n \in \mathbb {R}^{2}\), \(n = 0, \dots , N-1\) with a constant step size \(h > 0\), be the raw data; then:
0. Let \(\check{N} = 3\).
1. For \(\check{N} < N\), apply the Ramer–Douglas–Peucker algorithm to \(\gamma _n\), to obtain a new curve \(\check{\gamma }_n\), \(n = 0, \dots , \check{N}-1\), such that \(\check{\gamma }_0 = \gamma _{0}\) and \(\check{\gamma }_{\check{N} -1} = \gamma _{N-1}\).
2. Construct a cubic spline curve \(\gamma _{\textrm{cs}}(t)\), \(t \in [0, L]\), using \(\check{\gamma }_n\), \(n = 0, \dots , \check{N}-1\), as the control points; hence, \(\gamma _{\textrm{cs}}(0) = \gamma _0\) and \(\gamma _{\textrm{cs}}(L) = \gamma _{N-1}\).
3. Construct a discrete curve \(\bar{\gamma }_n\), \(n = 0, \dots , N-1\) with step size h, by sampling the cubic spline \(\gamma _{\textrm{cs}}(t_n)\) in a appropriate manner: Choose \(t_n\) such that \(\left\Vert \gamma _{\textrm{cs}}(t_{n+1}) - \gamma _{\textrm{cs}}(t_n)\right\Vert = h\) and \(\bar{\gamma }_n = \gamma _{\textrm{cs}}(t_n)\), \(n = 0, \dots , \check{N}-1\).
4. If the residual R is greater than a prescribed error \(\eta\),
repeat from step 1, with a greater value of \(\check{N}\). Otherwise, the process ends.
In our case, we used \(\eta = 10^{-3}\), and we observed that this produces a smoother plot for the curvature, see Fig. 4. Hence, we use \(\bar{\gamma }_{n}\), instead of \(\gamma _n\), as the input curve for the approximation algorithm. The admissible set U for the parameters \(\varTheta\), as defined in (42), was too broad and unexpected jumps in the value of the parameters produced unrealistic outputs. To keep the optimization relatively close to the initial guess, we decided to constrain the admissible set to \(\bar{U}_{0.1}\), defined by
where \(\bar{\varTheta }\) is the initial guess for the IPOPT method. In this way, \(\bar{U}_{0.1}\) constrain the final result to be in a \(10\%\) range of the initial guess. Final results are presented in Fig. 5. We note that the parameters that we obtained provide a good fit of the input curve. We can observe that, despite the curves being similar in shape to each other, the values of the parameter \(\alpha\) have big variations. However, the final result is still a good fit, after finding the remaining parameters. Let us note that, this algorithm allows us to input the parameter \(\alpha\) by hand (or by replacing (60) by an alternative expression or algorithm) and then we can continue with the next steps without any further change. The fact that we still obtained a good fit is attributed to the input curve having a soft varying curvature. We conclude that the method proposed has a good performance; however, further analysis on the recovery of the parameter \(\alpha\) is required.
4 Concluding remarks
In the present work we briefly reviewed the notion of log-aesthetic curve, and showed how the family of LAC with a given parameter \(\alpha\) can be described as segments of a basic LAC after applying the similarity transformations and shift of the arc length parameter (Proposition 1). This characterization constitutes a key ingredient that allowed us to provide an algorithmic way to recover the parameters \(\alpha\), S, \(s_0\), \(\phi\), and \((x_0, y_0)\), that uniquely identify a given LAC segment. This method was later used to obtain the initial input for the gradient descent-like method used to approximate a general planar curve segment by an LAC, where the input was regarded as a sequence of points and the output expressed in terms of a smooth LAC, as shown in (51). Although the fairing process involves one single LAC segment, which has a strictly monotonic radius of curvature, it is possible to approximate non-monotonic varying curvature curves if they resemble a spiral segment (by having no inflection points, for example). As noted in [17], there are some cases in which an LAC cannot be drawn. In this regard, we expect good performance of our algorithm if the input curve fits a drawable region as studied in [17]. Regarding the applications, we expect that this algorithm will be used as a tool to characterize existing objects, which is particularly useful in reverse engineering. Moreover, because the LAC is regarded as having aesthetically pleasing shape, there exists an increasing interest from the industry to have algorithms like the ones presented in this work that can be used in computer-aided design softwares.
We note that, our algorithm could extend the one proposed in [11], where only the estimation of \(\alpha\) is considered. In this way, the ideas presented in this work can be used with the data points resulting from the log-aesthetic filter. In future works, further studies in the method employed to find the parameter \(\alpha\) will be considered, in order to characterize a given design by a concrete value of \(\alpha\).
References
Brander, D., Gravesen, J., Nørjerg, T.B.: Approximation by planer elastic curves. Adv. Comput. Math. 43, 25–43 (2017)
Douglas, D., Peucker, T.: Algorithms for the reduction of the number of points required to represent a digitized line or its caricature. Can. Cartogr. 10(2), 112–122 (1973)
Gobithaasan, R.U., Miura, K.T.: Aesthetic spiral for design. Sains Malaysiana 40, 1301–1305 (2011)
Gobithaasan, R.U., Siew Wei, Y., Miura, K.T.: Log-aesthetic curves for shape completion problem. J. Appl. Math. 2014, 960302 (2014)
Graiff Zurita, S.E., Kajiwara, K., Suzuki, T.: Fairing of discrete planar curves by integrable discrete analogue of Euler’s elasticae, preprint, arXiv:2111.00804v1 (2021)
Harada, T., Mori, N., Sugiyama, K.: Study of quantitative analysis of curve’s character. Bull. JSSD 40, 9–16 (1994). (in Japanese)
Hoffmann, T.: Discrete differential geometry of curves and surfaces, MI Lecture Notes 18. Kyushu University, Fukuoka (2009)
Inoguchi, J., Jikumaru, Y., Kajiwara, K., Miura, K.T., Schief, W.K.: Log-aesthetic curves: similarity geometry, integrable discretization and variational principles, preprint, arXiv:1808.03104v2 (2021)
Inoguchi, J., Kajiwara, K., Miura, K.T., Sato, M., Schief, W.K., Shimizu, Y.: Log-aesthetic curves as similarity geometric analogue of Euler’s elasticae. Comput. Aided Geom. Des. 61, 1–5 (2018)
Levien, R., Séquin, C.H.: Interpolating splines: which is the fairest of them all? Comput. Aided Des. Appl. 6, 91–102 (2009)
Miura, K.T., Agari, S., Akie, T., Yoshida, N., Saito, T.: Discrete log-aesthetic filter. Comput. Aided Des. Appl. 6, 501–512 (2009)
Miura, K.T., Gobithaasan, R.U.: Aesthetic design with log-aesthetic curves and surfaces. In: Dobashi, Y., Ochiai, H. (eds.) Mathematical progress in expressive image synthesis III, Mathematics for industry, vol. 24, pp. 107–120. Springer, Singapore (2015)
Miura, K.T., Sone, J., Yamashita, A., Kaneko, T.: Derivation of a general formula of aesthetic curves. In: Proceedings of the Eighth International Conference on Humans and Computers (HC2005), pp 166–171 (2005)
Ramer, U.: An iterative procedure for the polygonal approximation of plane curves. Comput. Graph. Image Process. 1, 244–256 (1972)
Wächter, A., Biegler, L.T.: On the implementation of an interior-point filter line-search algorithm for large-scale nonlinear programming. Math. Program. Ser. A 106, 25–57 (2006)
Yoshida, N., Saito, T.: Interactive aesthetic curve segments. Vis. Comput. 22, 896–905 (2006)
Yoshida, N., Saito, T.: The evolutes of log-aesthetic planar curves and the drawable boundaries of the curve segments. Comput. Aided Des. Appl. 9, 721–731 (2012)
Ziatdinov, R., Yoshida, N., Kim, T.: Analytic parametric equations of log-aesthetic curves in terms of incomplete gamma functions. Comput. Aided Geom. Des. 29(2), 129–140 (2012)
Acknowledgements
This work was supported by JSPS Kakenhi JP21K03329 and JST CREST Grant Number JPMJCR1911. We would like to thank Mr. Kentaro Takechi at Shizuoka University for providing the 3D data of the scale model car and helping on sampling the keylines from the 3D model.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
This article is published under an open access license. Please check the 'Copyright Information' section either on this page or in the PDF for details of this license and what re-use is permitted. If your intended use exceeds what is permitted by the license or if you are unable to locate the licence and re-use information, please contact the Rights and Permissions team.
About this article
Cite this article
Graiff Zurita, S.E., Kajiwara, K. & Miura, K.T. Fairing of planar curves to log-aesthetic curves. Japan J. Indust. Appl. Math. 40, 1203–1219 (2023). https://doi.org/10.1007/s13160-023-00567-w
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s13160-023-00567-w