问题标签 [cubic-bezier]
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 - 给定 x-pos 在三次贝塞尔曲线上查找点
我有一个 CSS 类型的三次贝塞尔曲线,其中
A = 0,0
B = a, b where 0<a<1
C = p, q where 0<p<1
D = 1, 1
我想要一个pointOnBezier(a,b,p,q,x) => {x:x, y:y}
我发现这有帮助但没有数学公式的函数
https://upload.wikimedia.org/wikipedia/commons/d/db/B%C3%A9zier_3_big.gif
任何帮助将不胜感激。提前致谢!!!
javascript - 是否可以使用三次贝塞尔曲线多次运行一个函数?
是否可以使用三次贝塞尔曲线以设置的间隔运行函数 X 次?
例如,该函数应该在 5 秒内运行 10 次。如何计算频率以使其匹配三次贝塞尔曲线?
jupyter-lab - ipycanvas 显示最终的 stroke_lines 动画
所以我在玩一些贝塞尔曲线的动画——只是学习如何使用 ipycanvas (0,10,2) 的一部分——我制作的动画真的让我头疼。我期望看到的是 4 个贝塞尔控制点之间的一组直线,它们在画布周围“弹跳”,贝塞尔曲线也随之移动。
我确实得到了移动的贝塞尔曲线——但控制点保持静止。更奇怪的是,他们在最后的位置上是静止的,曲线来迎接他们。
现在有时 Python 的结构和引用会变得有点棘手,所以如果你没有真正考虑清楚,有时会得到令人困惑的结果——这完全可能是正在发生的事情——但我不知所措。
因此,为了确保我不感到困惑,我在开始时打印了控制点(pts),然后将它们显示到画布上。这证实了我的猜想。通过量子隧道或其他一些神奇的时间旅行,这条线canvas.stroke_lines(pts)
到达未来并抓住未来pts
存在的阵列并将控制点保持在其最终状态。
其他所有使用都pts
使用当前时间状态。
所以我需要知道的是 A) 物理定律是安全的,我只是太笨了,无法理解我自己的代码。B)我应该报告 ipycanvas 中有一些奇怪的错误。C)如何通过这种时间旅行代码获利——比如,我们可以用它来以某种方式分解大量数字吗?
说真的,我试图思考可能发生的事情,但我却一头雾水。由于 ipycanvas 正在与浏览器/javascript 对话,因此可能首先呈现帧的所有数据,并且用于保存pts
数据的数组stroke_lines
最终得到最终值......而 B 数组在每个循环中重新创建...... . 这是一个猜测。
javascript - 如何获得多条三次贝塞尔曲线的点(x,y,angle)?
现在我用的方法只能得到一条曲线的点,因为第二条曲线我不知道起点,我试着用第一条曲线的终点作为第二条曲线的起点,但这似乎是错误的,我尝试了多种变体,但似乎都不起作用。有任何想法吗?这是我的曲线,我将它们保存在一个数组中: