问题标签 [catmull-rom-curve]
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.
java - 适用于 Android 的 catmull-rom 样条曲线
我正在尝试找到一种在 android 平台上实现 catmull-rom 样条的方法,目的是通过 n 点平滑地绘制一条线。理想情况下,我可以通过 Path 和它的cubicTo 方法来调整三次贝塞尔曲线,正如这个线程中提到的那样:How do I draw a curve through tree points in Android?
不幸的是,我无法跟踪那里的实现,所以我希望那里有人已经这样做了,并且可以分享几行示例代码。
谢谢!
embedded - 计算样条曲面上的点
我正在研究一种在嵌入式系统上运行的控制算法。我的编程语言是 C,系统在内存和处理能力方面将受到非常严格的限制。
我在三维空间中有几个(大约 10 个)参考点。这些通常是静态的,但会偶尔更改。我想拟合一个样条曲面,使其通过所有这些点,然后有一个函数,对于给定的输入向量(x, z)返回距离y到平面y = 0的距离。
我认为这是一个需要分两部分解决的问题:1) 每当参考点发生变化时,都会计算一些新的系数,以及 2) 将系数插入一个函数,该函数返回给定(x, z)的y。(只有 2 个需要“实时”发生。)
我在网上对此进行了一些研究,但在数学上遇到了困难,而且很多材料都是针对计算机图形学的。我什至不确定我需要什么类型的样条;NURBS 和 Catmull-Rom 似乎都是相关的。最后,关于我的样条边缘的形状:由于我的输入向量来自有界的传感器读数,我并不真正关心样条在该边界之外做什么。
我将非常感谢一些帮助或相关材料的指针,任何伪代码片段将不胜感激。
math - 点不等距的三次插值
我正在尝试创建点列表的插值。
我有一些坐标点(ti,xi),其中 ti 是时间戳,xi 是相关值。我想创建一个通过这些点的函数,并允许我找到与位于区间中的通用 t 对应的 x 值。
我想用三阶插值对它们进行插值。我见过像 catmull-rom 插值这样的东西,但它只有在点 xi 等距时才有效。
例如这里http://www.mvps.org/directx/articles/catmull/你可以发现时间戳点是等距的,就像这里http://www.cs.cmu.edu/~462/projects/assn2 /assn2/catmullRom.pdf。
有什么方法可以应用非规则点的三次插值?
javascript - 平滑的 svg 路径连接
我有一组随机点,想用 raphaeljs 创建一个平滑的 svg 形状。为了连接点,我使用了 catmull-rom-spline。问题是路径闭合的点并不平滑。
这是我的项目中的一个示例路径:
我还创建了一个 jsfiddle:http: //jsfiddle.net/ry8kT/
这可以通过 catmull 曲线实现吗?如果没有,你能给我一个例子如何得到一个完全平滑的形状吗?
非常感谢,麦克法兰
curve - 没有尖点和自相交的 Catmull-rom 曲线
我有以下代码来计算四个控制点之间的点以生成 catmull-rom 曲线:
这很好用,但我想创建一些我认为称为向心参数化的东西。这意味着曲线将没有尖点和自相交。如果我将一个控制点真正靠近另一个控制点,曲线应该变得“更小”。我已经用谷歌搜索了我的眼睛,试图找到一种方法来做到这一点。有人知道怎么做吗?
3d - 将 Beziér 控制点转换为 Catmull-Rom 控制点
我正在做一些平滑的 3D 相机转换,并使用一个小型库来处理我的相机转换。
不幸的是,它只执行 Catmull-Rom 转换。我还使用了出版物中的一些信息,他们使用贝塞尔曲线进行过渡。
所以我的问题是:给定一组贝塞尔控制点。如何将它们转换为 Catmull-Rom 点?
如果可能的话,我将能够使用这个库。否则,我将不得不从头开始实现贝塞尔曲线。
更新
我应该提到控制点本身很好。曲线不必完全相同。只需要相同的行为。
ruby - Ruby 中的 Catmull-Rom 插值
我有一个点列表,我想在它们之间画一条平滑线。我正在使用 RVG 库进行绘图,所以如果我能从我的观点中得到一个 SVG 字符串,我会很高兴。搜了一圈,发现Catmull-Rom大概就是用的算法。
在 Kamelopard 和 Rubyvis 库中找到了一些实现,但从我的点列表中无法理解如何使用它们。
所以,问题是,我如何获取我的 (x,y) 点数组并从中获得 Catmull-Rom 插值 SVG 曲线?
animation - 关键帧插值 catmull rom
我知道有很多方法可以做到这一点。我对用于动画目的的 catmull rom 特别感兴趣。但是,我很难理解它。我访问过的所有网站都将关键姿势确定为点。然而,关键姿势也可以包含关节角度。这些在插值时是否与点相同?有没有学习catmull rom的好网站?
c# - XNA CatmullRom 曲线
我需要对我正在尝试的技术进行一些澄清。我正在尝试将实体从 A 点移动到 B 点,但我不希望实体沿直线移动。
例如,如果实体位于 x: 0, y:0 并且我想到达点 x:50, y: 0,我希望实体沿曲线行进到目标,我会想象它的最大距离将离开是 x:25 y:25 所以它在 X 上向目标移动,但在 y 上已经远离目标。
我研究了几个选项,包括样条曲线、曲线,但我认为可以完成这项工作的是 CatmullRom 曲线。我有点迷茫怎么用?我想知道每帧将我的实体移动到哪里,而不是函数返回的是插值。我会很感激一些关于如何使用它的指导。
如果有任何我错过的可能更容易的替代方法,我也会很感激听到它们。
编辑:
为了展示我如何获得曲线:
最终的想法是我即时生成这些点,但我现在只是想解决它。
iphone - 使用 ccTouchesMoved 在预定义的路径上移动精灵
我试图通过移动触摸在我定义的路径上移动精灵。但我无法与 cocos2D 中预定义的 CCCatmullRomBy Action 完全相同。请建议我该怎么做。
为了更好地理解,让我们假设一辆有路的汽车,我想在路上使用触摸来移动汽车。这条路是曲折的,就像 CCCatmullRomBy 一样,张力为 0
先感谢您。