私は、オーディオのウェーブデータを表現するベジェ曲線を使っています。次に、x座標で波をサンプリングし、y座標を取得してPCMデータに変換できるようにします。ベジェ曲線はパラメトリック方程式で表現されているので、これは複数のy値とx値が存在する可能性があるため問題になる可能性がありますが、サンプリングする曲線では関数の基準を満たしていることを保証できます。計量的に。だから私の質問は、直接x値に基づいてyの値をサンプリングする方法はありますか?これを行う最善の方法は何ではないでしょうか?今私の最高のアイデアは、私が望むx値に到達してからそのy値を使うまでカーブに沿って移動しますが、これは遅く非効率的です。ありがとうございました。x値に基づいて3次ベジェ曲線のy値を得ることは可能ですか?
0
A
答えて
1
はい、可能ですが多少複雑です。与えられたxでtについて解き、tからyを計算する必要があります。これはnewton-raphson法で近似することができます。このリンクは、それを実装する方法をよりよく説明します:http://greweb.me/2012/02/bezier-curve-based-easing-functions-from-concept-to-implementation/
別のオプションは、パラメトリックベジェ曲線ではなく、明示ベジェ曲線を使用することです。明示的には、yはxの関数である(すなわち、y = f(x))。 xおよびyの両方がtの関数である(すなわち、x = f(t)およびy = f(t))パラメトリック方程式とは対照的に、コントロールポイントのx値が均等に配置されている限り、曲線は明示的で、x = tと仮定できます。
EDIT:等間隔のx座標の文は、x = tが過度に単純化されていることを示しています。 x座標が0と1の間に均等に配置されていれば、それは真実です。それ以外の場合は、x座標を0と1の間の値に変換する必要があります。例えば、x座標が等間隔で3,4,5、 6ならば、t =(x-3)/(6 - 3)となる。
関連する問題
- 1. n次ベジェ曲線?
- 2. rのグラフに基づいてxとyの値を取得
- 3. wxWidgetsで3次ベジェ曲線を描く方法は?
- 4. ベジェ曲線とキャンバス
- 5. 3点を通るベジェ曲線
- 6. x値と関数に基づいてy値を計算する - Python
- 7. 近似nグレードベジェ曲線からキュービックおよび/または2次ベジェ曲線
- 8. 2次曲線を3次曲線に変換する
- 9. ThreeJSでベジェ曲線をアニメーション化する
- 10. 2次ベジェ曲線によるランダムパスの描画
- 11. 2次ベジェ曲線の最も近い点
- 12. Excelでのn次のベジェ曲線の実装
- 13. x軸とy軸を平均点の線としてプロットすることは可能ですか?
- 14. PHPとMysql変数値に基づいてデータベースを検索することは可能ですか?
- 15. CompactFrameworkでのベジェ曲線の描画
- 16. ベジェ曲線の境界を取得する
- 17. 実行方法x、y、z軸の値に基づいて通知を取得しますか?
- 18. ビジュアルベーシックでは、私のカーソルをx * y座標(Not x、y)にテレポートすることは可能ですか?
- 19. ベジェ次曲線:等加速度で移動
- 20. howtoはCGPoint(x、y)に基づいてピクセルデータを取得しますか?
- 21. SVGのパス内の2次ベジェ曲線関数
- 22. xとyを設定する方法C3線グラフのしきい値線
- 23. ベジェ曲線に沿った位置球
- 24. キュービックベジェ曲線 - 与えられたXに対してYを得る
- 25. Rからベジェ曲線をエクスポートする? Rの正弦曲線をプロットし、PDFとして出力を保存
- 26. カーソル位置に基づいた折れ線グラフのY値へのアクセス
- 27. 変換以前の値に基づいて観察可能
- 28. Javascriptキャンバス上のクリックリスナーでカーソルのx値とy値を取得
- 29. 線形ズームのベジェ曲線を計算する
- 30. 度数ベジェ曲線の近似N
ベジェ曲線の方程式の詳細がわからないのですが、xのtのパラメトリック方程式をxの式で解いて、その値をyの式に代入するといいでしょう。私の大きな疑問は、なぜベジェ曲線を使ってオーディオをモデリングするのかということです。あなたは何を達成しようとしていますか、フーリエ変換とオーディオのスペクトル特性について知っていますか? – Linuxios