問題タブ [bspline]
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 - B スプラインをベジエ曲線に変換する
B スプライン曲線があります。すべてのノットと、コントロール ポイントの x、y 座標があります。
B スプライン曲線をベジエ曲線に変換する必要があります。
私の最終目標は、html5 キャンバス要素に図形を描画できるようにすることです。B スプラインはベジエをサポートしない dxf ファイルから来ていますが、キャンバスはベジエのみをサポートしています。
プロセスを説明しようとするいくつかの記事を見つけましたが、それらは私の頭をかなり超えており、実際には非常に理論集約的であるようです. 例またはステップバイステップのヘルプが本当に必要です。
私が見つけたものは次のとおりです: (B-スプラインの説明)、(ベジエへの変換)、(Javascript の例)
最後のリンクには実際のコードが含まれているので便利ですが、ノードによって割り当てられた重みが考慮されていないようです。曲線が制御点を通過するかどうかに影響するように見えるので、これは重要だと思います。
役立つ場合は、ノードまたはコントロール ポイントを共有できます。誰かが段階的な手順を教えてくれたり、疑似(または実際の)コードを手伝ってくれたりしたら、とても感謝しています。
c++ - トライアングル リストを使用した BSpline パッチのテッセレーション (OpenGL)
タイトルが説明しているように、トライアングル リストを使用して BSpline パッチをテッセレーションしようとしています。
これは私のパッチの正面からの画像です。
私の問題は、この効果を与えるパッチの後部です。
ご覧のとおり、三角形の前の行は、描画されている新しい行に接続しています。行の終わりに達したときにインデックス値を 1 増やすなど、これを回避するためにさまざまな方法を試しました。私が見つけることができる唯一の簡単な修正は、各行を個別のループに入れることです(その行のサイズのためにループ範囲を使用します)。これはまったく直感的ではありません。
私のパッチを描画するためのコードは次のとおりです。
spline - コントロール ポイントの重みを増やすと、B スプラインの連続性に影響がありますか?
V スプラインのような NURBS スプラインとテンション スプラインに関する基本的な質問があります。
特定のコントロール ポイントまたはすべてのコントロール ポイントの重みを増やすと、B スプラインの連続性に影響がありますか? たとえば、一様なノットベクトルを持つ C2 連続加重 B スプライン (NURBS) の場合は? また、v-Spline のようなテンション スプラインの場合、テンション値はウェイトと同じように機能し、ノット ベクトルも均一です。
c# - C# での B-Spline 再帰的定義
C# で B-Splines の再帰的な定義を実装しようとしていますが、うまくいきません。これが私がやったことです:
そして、これが私が関数を呼び出す方法です:
画面には 0,125 が表示されるはずですが、代わりに 0,25 が表示されます。2 つの分母変数は、それらが 0 に等しいかどうかをチェックするために使用されます。0 に等しい場合は、定義により数値を 0 に設定する必要があります。誰かが私がこれを間違っているところを指摘できますか?
autocad - B-Rep とメッシュ インデックス表現の主な違いは何ですか
B-Rep (ParaSolid) が人気の立体表現であることは知っています。過去の経験から、OBJ、STLファイル形式のような三角形のメッシュ表現にはいつも触れています。B-Rep がメッシュ表現よりも優れているのはなぜでしょうか? 主な違いは何ですか?
java - libgdx - 正投影カメラを使用した Shaperender BspLine が機能しない
BSpline と ShapeRenderer を使用して曲線を描画しようとしています。遠近法カメラを使用すると、それができることに気づきました。代わりに OrthographicCamera を使用しようとすると、画面に何もレンダリングされません。私の目標は、Shape と同じデザインに従う ShapeRenderer と Sprite を使用して BSPline を描画することです。これを修正する方法/私が間違っていることを誰か教えてもらえますか? どうもありがとう
ここに私の他の重要な方法があります:
NB: 私の出発点はパス インターフェース スプラインでした
c# - 経路探索、おそらく B スプライン
現在の進行方向、現在の位置、パスに沿って遭遇したい次の 2 つのポイントを取得できるようにするプログラムを C# で作成しており、現在回転している角度を出力したいと考えています。パスの次の 2 つのポイントに移動できる円弧をたどります。
これを可能にするライブラリはありますか?また、少し調べてみたところ、B-Spline と呼ばれるものが役立つようですが、実装方法がわかりません。そのためのライブラリはありますか?また、Bsplining には 4 ポイントが必要であり、現在のヘディングを無視しているように見えるため、問題になる可能性があります。
scipy - scipy.interpolate スプライン フィットの結果を解釈する
3 次 b スプライン フィットで近似したいデータ ポイントがいくつかあります。別のプログラムでは、適合したノットと係数のみを使用していくつかの点を補間したいと考えています。これは、与えられたノットと係数を自分で評価するコードを書く必要があることを意味します。このwikiページを使用して、私はすでにさまざまな点を正しく評価することができました.
不思議なことに、コードを機能させるには、配列の最初と最後の 3 つのエントリを削除する必要がありました (注: 最初の 4 つと最後の 4 つのノットのエントリは同じであるため、0 による除算のエラーが発生します)。これらの重複したエントリがある理由を誰かが知っていますか? これらのエントリを削除することとは別に、wiki ページの方程式が機能します。結果から
データポイントの適切な近似値が得られます。
ただし、重みも使用したい場合、「knots」と「coeff」の配列が奇妙に見えることに気付きました。スプライン フィット関数の結果をどのように解釈する必要があるかは誰にもわかりません。現在、私は得る
それともこれもエラーですか?
理想的には、関数からのノットと係数が与えられたさまざまな点を評価するコード (C/C++、python) が必要です。