問題タブ [openscad]
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.
formula - C2 連続バイキュービック ベジエ サーフェス パッチの内部制御点を計算する方法
チューブを滑らかに結合するバイキュービック ベジエ サーフェスのコントロール ポイントを計算しようとしています。この例では、それぞれのベジエ パッチに 16 の制御点を指定します (OpenSCAD の構文で)。
頂点が与えられます。エッジに沿った制御点 (赤で表示) は、明らかな方向を持つ接線から計算されました:
パッチを平面 z=0、y=0、x=4、および x=y でミラーリングして、より大きな合成サーフェスを生成できます。 4 つのシームすべてに沿って連続する C1。そのサーフェスは、平面 z=0、y=0、および x=4 のシーム全体で C2 連続でもありますが、平面 x=y のシーム全体ではそうではありません (V 字型の黄色の法線ベクトルを参照)。
目的の C2 連続性を得るには、問題のあるシームに沿ったサーフェス法線が平面 x=y と同一平面上にある必要があります。
すべての縫い目に沿った法線が希望どおりになるように、4 つの内側の制御点を設定することはまったく可能ですか?
もしそうなら、完全にC2の連続合成面を可能にするために、どの式またはアルゴリズムによって内側の制御点を計算する必要がありますか?
そうでない場合、必要なパッチを生成するための適切なアプローチは何ですか?