0

ポイントのリストと、それらのポイントを経由して外部プロバイダーが生成したルートがあります。

自分の道路網で同じポイントを使用してルートを生成したいと思います。

次に、2 つのルートに大きな違いがあるかどうかを検出できるようにしたいと考えています。

1 つの提案は、2 つのルートについて、どの道路セグメントを通過するかを調べ、道路セグメントのリストを比較することです。

これは有効なアプローチですか?与えられたルートの道路セグメントのリストを取得するにはどうすればよいでしょうか?

Java 5 および Oracle 10g で ArcGis サーバー 9.3 を使用しています。Java API 経由で ST 関数と NetworkAnalyst を使用しています。

ありがとう。

4

2 に答える 2

1

ポイントと道路網を使用してルートを計算します。次に、結果のルートをポリゴンにバッファーします (バッファー半径は「許容範囲」にする必要があります)。次に、ポリゴンを使用して外部ルートをクリップします。結果のポリラインが空でない場合は、許容範囲外の偏差があります。

この方法では、バックトラック、U ターン、近くの平行道路などの「重大な」逸脱は考慮されません。

または、結果の「道順」を比較して、特に通りの名前を使用して偏差を確認することもできます。これにより、すべての道路セグメントをチェックする手間が省けます。道路名に相違がある場合は、各セクションの個々の道路セグメントを確認してください。

于 2008-12-30T22:29:44.193 に答える
0

私は自分のアプリケーションに似たようなものを実装しました。GPS デバイスから取得した緯度/経度座標のリストがあり、このデータに基づいてルートを作成する必要がありました。

各 GPS 位置を道路網のノードと照合することから始めました。次に、「連続して重複する」ノードを削除して、同じノードにある連続した位置を除外しました。次に、最初のノードから始めて、道路ネットワークを「歩き」始めました。最初のノードと 2 番目のノードを確認し、共通の道路セグメントを確認しました。見つけたら、すごい。そうでない場合は、2 つのノード間の最短経路を作成し、代わりにそれらの道路を使用します。すべてのノードを調べるまで、これを続けます。このプロセスの最後に、車両が移動した道路セグメントのリストと、それらが移動した順序も取得します。

残念ながら、私は別の地図、別のプログラミング言語、別のデータベースを使用しています。そのため、コードを共有してもまったく役に立ちません。上記のプロセスが、あなたのタスクを達成するのに十分な助けになることを願っています.

于 2008-12-23T13:45:16.613 に答える