请问这样的曲线有标准方程吗?

2022-03-04 12:55:53 +08:00
 zeronofreya

我想做一个 js 动画,知道 x 的值,怎么求 y

2177 次点击
所在节点    数学
14 条回复
czfy
2022-03-04 13:08:19 +08:00
这是正态分布?
a627667970
2022-03-04 13:09:02 +08:00
正态分布?
moen
2022-03-04 13:09:07 +08:00
这不就是贝塞尔曲线?
lujjjh
2022-03-04 13:15:04 +08:00
信息太少,推荐 https://easings.net/
yggd
2022-03-04 13:28:54 +08:00
贝塞尔曲线啊,控制点都给出了
https://javascript.info/bezier-curve
noe132
2022-03-04 13:33:04 +08:00
如果是标准的 cubic rezier
https://cubic-bezier.com/#.4,0,.6,1

const bezierEasing = require("bezier-easing")
const curve = bezierEasing(0.4, 0, 0.6, 1)
const xs = Array(11).fill(0).map((_, i) => i * 0.1)
const arr = xs.map(x => [x, curve(x)])
arr.forEach(pair => console.log(pair))

https://runkit.com/noe132/6221a3eec7c2b10008a4b158
mxT52CRuqR6o5
2022-03-04 13:33:11 +08:00
贝塞尔曲线+1
zeronofreya
2022-03-04 15:46:06 +08:00
@lujjjh 我更新了一下
zeronofreya
2022-03-04 15:46:23 +08:00
@czfy js 动画用的
zeronofreya
2022-03-04 15:48:20 +08:00
@noe132 我用这个库没法计算,不知道 x 的值,必须要曲线方程求解
thedrwu
2022-03-04 15:49:12 +08:00
exp(x*x/(x*x-c*c))
x 从-c 到+c
thedrwu
2022-03-04 15:51:55 +08:00
无限可微,边界所有导数都是 0
distribution 基函数的例子
misdake
2022-03-04 16:00:36 +08:00
2 个端点 2 个控制点的贝塞尔曲线,是 3 次的参数方程,给 x 解 y 的话,把三次方程求根公式搞进去,外部保证有唯一解,求出满足范围的实数解 t ,把 t 带入 y 的方程就能得到 y 。你现在的需求更复杂,自变量还有当前的 y ,很麻烦啊。
不要求精确解的话,不如直接二分法求 t ,再用 t 求 y 。
misdake
2022-03-04 16:07:26 +08:00
另外看你这个示意图,求的是一个斜率为 2 的直线和曲线的交点,如果 y0/x0 足够大,完全可能有 3 个解。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/837925

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX