问题标签 [spline]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 如何使用javascript HTML5画布通过N个点绘制平滑曲线?
对于绘图应用程序,我将鼠标移动坐标保存到数组中,然后使用 lineTo 绘制它们。结果线不平滑。如何在所有收集的点之间生成一条曲线?
我用谷歌搜索了,但我只找到了 3 个用于绘制线条的函数:对于 2 个样本点,只需使用lineTo
. 对于 3 个采样点quadraticCurveTo
,对于 4 个采样点,bezierCurveTo
。
(我尝试为数组中的每 4 个点绘制一个bezierCurveTo
,但这会导致每 4 个采样点出现扭结,而不是连续平滑曲线。)
如何编写一个函数来绘制具有 5 个及以上样本点的平滑曲线?
math - 确定对象追随者的轨迹 - 追求曲线
我已经开始为游戏服务器开发单位轨迹,现在我正试图在给定时间检索单位的位置。当轨迹只是一条直线时很容易,但当一个单位追逐另一个单位时,情况就复杂得多了。
我已经完成了Flash 应用程序来说明问题。黑色轨迹适用于单向行进的单元。蓝色追逐黑色,红色追逐蓝色。我想要的是预先计算蓝色和红色的整个轨迹,以便能够在恒定时间内检索它们的位置。
是否可以?谢谢你的帮助!!
matlab - 使用 Spline 方法时,Spline 函数与 Interp1 函数有何不同?
有谁知道为什么我会从 Spline 函数与使用 Spline 方法的 Interp1 函数得到不同的结果?我试图查找其他人是否有此问题,但我唯一能找到的是函数期望输入以不同的顺序(即列与行)。我正在运行的代码是...
如果您查看结果图,就会发现差异很大,我不确定为什么会这样。任何帮助,将不胜感激!
r - 是否有估计多元自然三次样条(或类似)函数的 R 库?
注意:最初于 2011 年 7 月 26 日发布在Cross Validated (stats SE)上,迄今为止没有正确答案。
背景
我有一个模型f,其中Y=f( X )
X是来自m个参数的样本的nxm 矩阵, Y是模型输出的nx 1向量。
f是计算密集型的,所以我想使用通过( X , Y)点的多元三次样条来近似f,这样我就可以在更多的点上评估Y。
问题
是否有一个 R 函数可以计算X和Y之间的任意关系?
具体来说,我正在寻找该splinefun
函数的多变量版本,它为单变量情况生成样条函数。
例如,这就是splinefun
单变量案例的工作方式
函数通过点精确插值的测试是成功的:
我试过的
我已经查看了mda包,似乎以下内容应该有效:
然而,该函数并没有通过设计点完全插值:
我也找不到在 、 或 包中实现三次样条gam
的marss
方法earth
。
python - 将计算函数存储到磁盘以便在 python 中快速访问
我的问题有两个部分。一:我要在网格上做双重积分
现在,我读到贝塞尔函数可以预先计算并保存到磁盘以便快速访问。我该怎么做呢?现在,我正在根据需要评估来自 scipy.special 的 besselfunction。
第二个问题:我已经对一个微分方程进行了数值积分,并使用样条解来求解其他微分方程。然而,花键解决方案很慢。有没有办法让它更快?
math - 样条插值:具有 C2 连续性的三次与分段 Hermite
我在 math.stackexchange.com 上没有得到太多帮助,所以我会在这里尝试...
最近,我一直在寻找我拥有的一些数据的插值三次样条。我想我对它的工作原理有一个很好的理解:获取 x,y 数据,插入一个三对角矩阵,求解 y(i) 的二阶导数,并根据二阶导数计算系数。
但是,我遇到了 Game Programming Gems 5 中的一篇文章,该文章使用具有C2连续性的三次Hermite样条。本文使用三对角矩阵来求解线性方程组,但它实际上是求解一阶导数而不是二阶导数。经过进一步调查,我注意到 Scilab 还使用具有 C2 连续性的 Hermite 样条。他们的 splin() 函数返回输入数据的斜率。
在插值数据方面,使用 C2 Hermite 样条比普通的旧三次样条有什么优势吗?如果两者都具有 C2 连续性,我不太明白您为什么要使用其中一个。
谢谢!
matlab - 三次样条程序
我正在尝试编写三次样条插值程序。我已经编写了程序,但是图表没有正确显示。样条曲线使用自然边界条件(开始/结束节点的第二个导数为 0)。代码在 Matlab 中,如下所示,
当我运行代码时,插值函数不是对称的,并且不能正确收敛。任何人都可以就我的代码中的问题提供任何建议吗?谢谢。
spline - 张力与三次样条插值有何关系?
张力与三次样条插值有何关系?我指的是这篇文章的三次样条插值。张力系数 t=0 用于第一个结点,t=1 用于最后一个结点。但是我们可以在哪里替代三次样条中的其他张力值,例如 0.1、0.2 等?任何人都可以指导我找到任何有用的参考资料吗?
computational-geometry - 三次样条插值:如何计算第二个样条 S2
我在 Pascal 中有一个任务来计算三次样条。我已经完成了大部分程序,还有一个问题。我的任务是,对于函数 y = f(x),找到样条 S1 和 S2,同时找到
delta1 = max|f(x)-S(x)|, delta2 = max|f'(x)-S1'( x)|, delta3 = max|f(x)-S2(x)|, delta4 = max|f'(x)-S2'(x)|
哪个公式对 S2 有用?
到目前为止,这是我的代码:
matlab - MATLAB中的三次样条插值
我正在使用interp1
MATLAB 中的函数在信号中插入一些丢失的数据,它就像一个魅力。但是,我想知道该功能是如何工作的。
我检查了函数的代码interp1
,它使用了这个函数spline
。该函数的代码spline
对我来说非常难以理解,所以我用谷歌搜索并在维基百科上搜索过它,并且我(通常)知道它是如何工作的,具有自由度,以及该函数如何使用多项式(通常是三阶)来生成曲线的缺失部分。
如果我有一个包含 20 个数字的数组,并且 8 - 12 将丢失(零):
4 5 2 3 5 4 3 0 0 0 0 0 4 5 2 4 3 5 4 3
该函数如何确定哪些数字适合其中?它是在数据上移动的特定宽度的窗口,如处理 [1-5]、[2-6]、[3-7] 等?还是它使用缺失数据左右的 2 或 3 个数字?
我不是在寻找数学解释,我只是想知道它是如何发挥作用的 :)