问题标签 [hermite]

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.

0 投票
0 回答
506 浏览

python - 如何在 python 中插入加权 Hermite 样条曲线

我需要对加权 Hermite 样条进行插值,但我很难想出一个公式来正确计算不同切线角度的值。

有没有人有一个公式可以在不使用 scipy 或 numpy 的情况下理想地计算 python 中的加权切线?或者也许是一个解释其背后数学的pdf链接?提前感谢您提供的任何建议。

数据来自需要在 Maya 之外使用的 Autodesk Maya 动画曲线。是的,我使用过包含的 animEngine.c,但它不能正确计算切线设置为“自动”的键

以下是一些示例数据:

与非加权曲线相同:

0 投票
1 回答
10581 浏览

python - Python中的Hermite插值

我有这个程序用于计算 Hermite 插值。

问题是,它的行为真的很糟糕。 35 个切比雪夫节点的插值

这是 35 个切比雪夫节点的图表。如果我放更多的点,开始的峰值会更高(这个节点数量约为 10^7)。

我使用拉格朗日方法(绿色,它移动了它可以看到)插入了这个相同的函数,你可以看到它看起来很好。

这是代码:

我看不出这里有什么问题。谢谢!

0 投票
1 回答
535 浏览

c++ - 多变量 Hermite 样条

我知道如何从16 个控制点(即 4x4 网格)如 B 样条、Catmull–Rom、Besier做双三次补丁...

但是,我更喜欢 2D/3D 类比Hermite 样条曲线,由 4 个控制点 ( p00,p01,p10,p11) 和 4 个法线 ( n00,n01,n10,n11) 在该点描述。

我尝试对其进行编程(首先进行 2x 1D 插值,u而不是沿插值结果v)。

当我意识到我不知道如何使用表面法线而不是一维 Hermite 样条中使用的导数时,我陷入了困境。

如果我天真地只是插入法线而不是导数,我会得到无意义的结果。请参阅此处的 C++ 代码(我只使用了相关部分):

0 投票
1 回答
2876 浏览

spline - Catmull-Rom 和 Hermite 样条如何关联?

我对它们之间的关系有点困惑。在我的课堂上,我的教授问如何使用自动计算的切线将 C1 连续分段 Hermite 曲线拟合到 x 个点。有人可以解释这是如何工作的吗?

0 投票
1 回答
300 浏览

fortran - 我在 Fortran 中的 Hermite 插值有什么问题?

Hermite 插值问题

我正在尝试为给定的一组 x 的函数和导数值找到牛顿除法差异。我的代码在处理小例子时遇到了严重的问题,但在更大的例子上却失败了。很明显,我的答案比原来的函数值要大得多。

有人知道我做错了什么吗?

价值观

xf(x) f'(x)

1.16、1.2337、2.6643

1.32、1.6879、2.9989

1.48、2.1814、3.1464

1.64、2.6832、3.0862

1.8、3.1553、2.7697

输出

1.1599999999999999 62.040113431002474

1.3200000000000001 180.40121445431600

1.4800000000000000 212.36319446149312

1.6399999999999999 228.61845650513027

1.8000000000000000 245.11610836104515

0 投票
2 回答
4967 浏览

python - 三次隐士样条插值python

我想计算一个三次多项式,该多项式由其函数值和指定点的导数定义。

https://en.wikipedia.org/wiki/Cubic_Hermite_spline

我知道 scipy 的插值方法。具体来说

splprep插值 N 维样条和 splev来评估其导数。

是否有一个 python 例程接受函数值f(x)和对应于值x的导数f'(x)并计算适合给定数据的样条表示。

举个例子:
我在空间中有两个由坐标x,y,z定义的物体位置,我知道物体在这些位置的速度x',y',z'。我现在可以在时间 t 内插值对象在两点之间的路径吗?考虑所有给定的参数。

0 投票
0 回答
896 浏览

c++ - 通过四个点制定/编码 Hermite 插值

搜索 Hermite 插值的 C/C++ 实现。请建议简单/可读/学术程序。

输入:x 和 y 双精度数组,每个数组有 4 个值。代表 4 个二维点。请注意,我没有切线。

输出:现在给定 x 的任何新值(在给定 x 值的范围内),需要找到新的 y。请注意我没有参数't'。

请提出建议并展示 C/C++ 实现。

0 投票
1 回答
912 浏览

c# - 如何在 Unity3D 5 中使用 Hermite Spline 控制器弯曲火车车厢?

我正在使用 Unity3D 5 制作火车模拟器,我想在弯曲的轨道上平稳地弯曲火车车厢并在直线轨道上恢复正常,我该怎么做?

我正在使用Hermite Spline Controller C# 版本,

这是代码。

0 投票
2 回答
994 浏览

javascript - 在浏览器画布上绘制 Hermite 曲线(javascript)

我正在尝试在画布浏览器上绘制隐士曲线。Hermite 曲线由 2 个点和 2 个导数定义。

我可以在画布上绘制贝塞尔曲线。有什么方法可以将 Hermite 曲线的点和推导转换为贝塞尔曲线,以便我可以在画布上绘制它?

还有其他选项可以在浏览器上绘制 Hermite 曲线吗?

感谢帮助。

0 投票
1 回答
215 浏览

swift - swift: Hermite 圆帽 UIBezierpath

我的应用程序中有一个部分,用户可以在其中绘制一些东西。由于 touchesMoved 的刷新率较慢,如果用户画得很快,线条就不会流畅。这就是我使用 Hermite 的原因。它为每个刷新率设置一个点,然后在这些点之间绘制一个 UIBezierpath(带有扩展以使其平滑)。它工作得很好!我现在有一个流畅的设计!

唯一的问题是我有时没有得到一个回合开始上限,如果我在相同的路径上切换它也会发生。

我认为这与在这些点之间绘制贝塞尔路径的代码有关。所以我正在寻找也使用 Hermite 并且知道如何解决这个问题的人。 在此处输入图像描述