問題タブ [spline]

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.

0 投票する
2 に答える
606 参照

apache-flex - 微分不可能関数のスプライン?

ある時点で微分できない関数があります。補間にスプライン(degrafaのBezierspline)を使用すると、この時点での補間は期待どおりに機能しません(この時点で、関数にねじれがあります)。スプラインで補間すると、この点の周りにある種のループが描画されます。これは、スプラインが現時点で一意ではない関数の導関数を必要とするために発生すると思います。

そうですか?この場合、私に何をするようにアドバイスしますか?

前もって感謝します

セバスチャン

0 投票する
2 に答える
2211 参照

.net - .NET で B スプラインを視覚化する

.NET でB スプライン ( http://en.wikipedia.org/wiki/B-spline ) を視覚化する必要があるかもしれません。どこから始めればいいのかわからない。それを行う簡単な方法やライブラリはありますか? Silverlight で実行したいのですが、WPF と Win フォームでも問題ありません。ソフトウェアは、追加、削除、または移動してスプラインを再描画できるいくつかの制御点を持つ座標系であると想像しています。私には数学的背景が欠けていることに注意してください。スプラインを描画するためのものと思われる GDI+ のメソッドをいくつか見つけましたが、これらが B スプラインであるかどうかはわかりません。

アドバイスをいただければ幸いです。ライブラリ、コード、ガイドへのリンク、または一般的な提案を歓迎します。

0 投票する
2 に答える
38835 参照

c++ - セントリペタルCatmull–Romスプラインはどのように機能しますか?

Catmull-Romスプラインに関する最も詳細な情報があると思われるこのサイトから、スプラインを作成するには4つのポイントが必要であるように思われます。ただし、ポイントp0とp3がp1とp2の間の値にどのように影響するかについては触れられていません。

もう1つの質問は、連続スプラインをどのように作成するかということです。p4 = p2にすることで、点p1、p2をp4、p5と連続するように定義するのと同じくらい簡単でしょうか(つまり、p0、p1、p2、p3、p4、p5、p6、...、pNがあると仮定します)。 )。

より一般的な質問は、Catmull-Romスプラインの接線をどのように計算するかということです。これらの入力値が与える位置座標を前提として、スプライン上の2つのポイント(たとえば0.01、0.011)を取得し、ピタゴラスに基づいて接線を取得する必要がありますか?

0 投票する
2 に答える
4473 参照

c++ - Catmull-Romスプラインを接続して、その長さを計算しますか?

任意の数のポイント(位置と制御)を取り、与えられた情報に基づいてキャットマルロムスプラインを作成するクラスを作成しようとしています。

私がしていること-そしてこれがそれを行う正しい方法であるかどうかは本当にわかりません-は、次のようなクラスに個々のポイントを格納することです:

class Point { public: Vector3 position; Vector3 control; }

明らかに位置はポイントの位置であり、コントロールはコントロールポイントです。

私の問題はスプラインを接続することです-スプライン配列にポイントを保持する上記のクラスを考えると、特定の位置には1つのコントロールポイントしか持てないことを示しています。したがって、catmull romスプラインに3つ以上のポイントがある場合、接続されているさまざまな個々のcatmull-romスプラインは、1つの位置と1つのコントロールを別のそのようなスプラインと共有します。

位置が同じである必要があります-それらの間で連続するスプラインを作成したいので。しかし、私は本当に疑問に思います。コントロールポイントも2つのスプライン間で同じである必要がありますか?コントロールポイントを少しいじると、あるスプラインから別のスプラインにスムーズに移行しているように見せることができますが、それらの移行方法がキャットマルロムスプラインの形状と一致しているかどうかはわかりません。 。私は自分の手に座ってそれで十分だと合理化するよりも、正しくそれをしたいのです。

明らかに、私の質問の2番目の部分は自明です。2つの制御点と位置点が与えられた場合、キャットマルロムスプラインの長さを計算するにはどうすればよいですか?

0 投票する
4 に答える
48539 参照

c++ - C++ で 3 次スプラインを解くための適切なライブラリはありますか?

大きな 3 次スプライン (1000 ポイントのオーダー) を解くための関数を提供する優れた C++ ライブラリを探しています。

0 投票する
3 に答える
8432 参照

python - Catmull-PythonのRomスプライン

3点からCatmull-Romスプラインを計算するためのライブラリまたは関数がPythonにありますか?

最後に必要なのは、スプラインに沿った点のx、y座標です。ただし、スプラインに沿って指定された量tから常に等距離にある場合(たとえば、スプライン曲線の長さは3単位で、x、y座標が必要です)。スプラインの長さ0、1、2、および3で)

本当にエキサイティングなものはありません。私は自分で書いていますが、何かいいものを見つけたら、テストする(または時間を節約する)のに最適です

0 投票する
2 に答える
8401 参照

math - 平滑化されたポリラインを表すベジエ曲線を作成するにはどうすればよいですか?

曲線を近似するポリラインがあり、ベジエ曲線の描画をサポートする PostScript で滑らかな曲線として描画したいと考えています。そのためには、ポリライン ポイントの各ペアの間に 2 つのコントロール ポイントを生成する必要があります。(ソースから元の曲線を取得することはできません。ポリラインだけです。)

この説明のカーディナル スプラインを使用してある程度成功しましたが、そこにあるパラメータはWikipediaGDIPlus.DrawCurveとは異なり、どちらも張力を参照しています。MS には詳細がなく、ウィキペディアには詳細が不完全です (カーディナル スプラインは x 値を無視しますか?)。

張力に基づく制御点の式は何ですか?

0 投票する
2 に答える
1877 参照

drawing - タブレット入力から滑らかな線を引く

ユーザーがスタイラスをタブレット上でドラッグすると、一連の座標が表示されます。ペンのパスを滑らかな線で近似し、その後ろの数サンプルポイントのみを追跡する必要があります。これをどのように行いますか?

言い換えれば、ユーザーがタブレットで線を描くときに、どのようにすてきな滑らかなレスポンシブ線をレンダリングしますか?点を直線で結ぶだけでは不十分です。実際の描画プログラムは、サンプルポイントがどれほど近くても遠くても、線を曲げるのにはるかに優れています。ペンや手の揺れを考慮して、実行するスムージングの量を示す番号を付けることもできます。どこでこのようなことを学ぶことができますか?

0 投票する
3 に答える
5904 参照

c++ - 特定の距離の後に catmull rom スプラインのポイントを取得しますか?

特定の長さのCatmull-Rom スプラインがある場合、特定の距離でのその位置をどのように計算できますか? 通常、catmull rom スプラインのポイントを計算するには、0 から 1 の間の値を入力して比率を介して位置を取得しますが、距離に対してこれを行うにはどうすればよいですか? たとえば、スプラインの長さが 30 単位の場合、距離 8 の位置を取得するにはどうすればよいですか?

私が尋ねる理由は、[0,1] ドメインのポイントを与える catmull rom スプラインでは、スプラインにその距離でポイントを与えることを保証しないように思われるためです。たとえば、0.5 を catmull romspline に入力した場合長さ 30 は、スプライン自体が実質的に直線でない限り、スプラインの距離 15 の位置を取得するという意味ではありません..

0 投票する
4 に答える
23549 参照

python - Pythonでデータポイントを将来に外挿する簡単な方法はありますか?

データポイントがあるすべての日付に対して、単純なnumpy配列があります。このようなもの:

date(2008,5,1)、date(2008, 5, 20) など、データ ポイントを将来に外挿する簡単な方法はありますか? 数学的アルゴリズムで実行できることを理解しています。しかし、ここで私は簡単に手に入る果物を探しています。実際、私は numpy.linalg.solve の機能が気に入っていますが、外挿には適用できないようです。多分私は絶対に間違っています。

実際には、より具体的には、バーンダウン チャート (xp 用語) を作成しています:「x = 日付、y = 実行する作業量」なので、既に完了したスプリントがあり、将来のスプリントがどのようになるかを視覚化したいと考えています。今の状況が続けば行く。そして最後に、発売日を予測したいと思います。したがって、「実行する作業量」の性質は、バーンダウン チャートで常に低下することです。また、外挿されたリリース日: ボリュームがゼロになる日付も取得したいと考えています。

これはすべて、開発チームに状況を示すためのものです。ここでは正確さはそれほど重要ではありません:) 開発チームのモチベーションが主な要因です。つまり、非常に近似的な外挿法で問題ありません。