7

線と任意のグラフィックパスの交点を幾何学的に計算する方法はありますか?すべての線と曲線がパスのどこにあるかを知っています。それが役立つ場合は、HTML5キャンバス要素を使用しています。基本的に、私はすべてのキャンバス描画コマンドとその引数にアクセスできます。たとえば、APIがlineTo、moveTo、arcの順に呼び出された場合、そのすべての情報があります。APIへの各呼び出しは、配列に格納されます。パスの定義があります。線がパスと交差する場所を把握したいだけです。以下は、私が見つける必要があるポイントの例を示す画像です。

代替テキスト

助けてくれてありがとう!繰り返しになりますが、可能であればピクセルベースではなく、幾何学的にこれを行いたいと思います。

4

4 に答える 4

8

Kevin LindseyのJavascriptジオメトリライブラリを確認することをお勧めします。これには、おそらく探しているすべての交差アルゴリズムが含まれています:http ://www.kevlindev.com/geometry/index.htm

于 2010-06-20T11:19:35.243 に答える
0

グラフィックパスがどのように定義されているかを知らなければ、具体的なアルゴリズムで質問に答えることは不可能です。この本には、直線セグメントのアルゴリズムに関する解決策があります。

于 2010-06-19T23:22:41.870 に答える
0

あなたがすべての方程式を持っているなら、あなたはそれをすることができます(理論的には)。実際には、それはそれほど簡単ではありません(特に一般的な場合ではありません)。この議論には、交差する線とベジェ曲線に関するいくつかの良いアドバイスがあります。

于 2010-06-19T23:25:16.637 に答える
0

直線と「スプライン」x(t)、y(t)を交差させたいと考えています。これは、x(t)とy(t)の両方で最大4次の多項式である必要があります。あなたは方程式を解くことを編集しました、しかしあなたはすべてのパラメータを知る必要があります。解がいずれかの範囲外にある場合(線分とスプラインセグメントに開始と終了があります)-それを破棄します。関連するq:

スプラインと線の交点

于 2010-06-19T23:26:48.867 に答える