特定の状況に対する解決策が必要です。基本的に線分で機能するアルゴリズムがあります。線分の終点と始点しか知りません。(ポイントには 2 つの座標 x、y があります。これらは画像上のピクセル ポイントです。また、画像のサイズも知っています。) これらの線分を調べて、それらに対して何かを実行したいと考えています。ただし、同じ線分を再度調べないように、調べた線分を追跡する必要もあります。C++を使っているのでstl set containerを使いたいです。
私の質問は、これらの線分を終点と始点に従ってどのように保存できますか? 終点と始点の一意の番号を生成する必要があります。(また、 stl set を使用する以外のアドバイスも受け付けています:))
考えられる解決策の 1 つは、(y*image->Witdh) + x によって、これら 2 つのピクセルのインデックス番号を作成したことです。次に、2 つのインデックス番号を取得します (ちなみに、これらは整数です)。次に、これらの番号を次のように連結します: (indexStart << 32) + indexEnd.(double を取得します)。これで固有の番号があり、セットに簡単に保管できます。しかし、問題は私の検索中に、線分の始点が同じ線分の終点になる可能性があることです。エンドポイントから同じ線分に出くわした場合、連結された線分の一意の番号は (indexEnd << 32) + indexStart になります。次に、回避する必要がある同じ線分をセット コンテナーに追加します。
アドバイスをありがとう。