3

ユーザーがフォームに線を引くことができる割り当てがあります。ユーザーが行を作成するとすぐに、その行は、ユーザーが以前に入力したすべての行を含むリストにプッシュされます。次に、ユーザーがフレームを黄色で見ることができるように、線がフレームに描画されます。私の仕事は、ユーザーが線を使用して接続されたオブジェクトを作成しようとするたびに、そのオブジェクトが黄色ではなく緑色に変わる必要があるということです。だから私はすべての線分の2つの座標を持っています.閉じたオブジェクトが線のセットによって形成されていることをどのように判断できますか. 私が従うことができるアルゴリズムはありますか? ここに画像の説明を入力

4

1 に答える 1

2

セグメントごとに、他のセグメント(存在する場合)との交点を見つけます。交点を見つけたら、それを2つの関連するセグメントにリンクします。

これで、交点を頂点、セグメントをエッジとする「無向グラフ」ができました。

あとは、グラフでサイクルを見つけるだけです。各サイクルは閉じたオブジェクトです。

于 2013-01-15T08:11:44.473 に答える