TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

On the Spline: A Brief History of the Computational Curve

64 点作者 alnis超过 9 年前

3 条评论

jacobolus超过 9 年前
Folks interested in splines should check out Raph Levien’s Ph.D thesis, <a href="http:&#x2F;&#x2F;www.levien.com&#x2F;phd&#x2F;phd.html" rel="nofollow">http:&#x2F;&#x2F;www.levien.com&#x2F;phd&#x2F;phd.html</a><p>He made splines out of piecewise “spiro” curves (aka clothoids, Cornu spirals or Euler spirals), for which curvature changes linearly with arclength. This makes much smoother-looking curves than naive use of e.g. Bézier-curve segments, which he found made it much easier to trace or create nice looking letter glyphs for font design.
shoo超过 9 年前
There&#x27;s a nice generalisation of splines to higher-dimensional spaces, in a non-ad-hoc way:<p>For the case of fitting a 2D surface to interpolate some control points {(x_i, y_i)}_i, x_i \in R^2, y_i in R, we can seek to find a surface f : R^2 --&gt; R that attains the minimum<p><pre><code> min_f sum_i ( f(x_i) - y_i )^2 + \lambda || D f ||^2 </code></pre> where \lambda &gt; 0 is some real constant parameter.<p>I.e., we seek to find a surface f that trades-off goodness of fit to the control points (in the least-squares sense) against smoothness (measured by the norm of the derivative).<p>In the 2D case these are called &quot;thin-plate splines&quot;. They can be viewed as nice energy-mininising surfaces that interpolate between a few control points. The functions f live in Sobolev spaces - analysis of this stuff descends into a lot of PDE theory and approximation theory if you want to compute approximations to them in practice.<p>To get non-singular surfaces in higher dimensions than 2 you merely have to increase which derivative appears in the smoothing term, but the same idea basically works. (You also need to ensure you have enough control points to define the surface -- note that if your smoothing term is || D^k f ||^2 then a degree k-1 polynomial is invisible to it -- so the smoothing term does not control a degree k-1 polynomial component, so you have to ensure you have appropriate control points to define that part)<p>If you are curious to read more about this, there&#x27;s Grace Wahba&#x27;s book &quot;spline models for observational data&quot;. e.g. <a href="http:&#x2F;&#x2F;bookstore.siam.org&#x2F;CB59&#x2F;" rel="nofollow">http:&#x2F;&#x2F;bookstore.siam.org&#x2F;CB59&#x2F;</a>
Animats超过 9 年前
Clothoids are used for many railroad curve transitions, because they are constant-jerk curves. (Jerk is the derivative of acceleration.) They can provide a smoother look than B-splines, but are not as general.