3

スイスの OSM データを Postgres にインポートしました。高速道路の連続部分 (名前は知っています)、つまり 2 つの特定の都市を結ぶ部分の道路データを取得することに興味があります。高速道路は非常に大きく (A1)、多くの都市を結んでいます。

一連の道路セグメントが postgres にどのように格納されているか (つまり、ある道路セグメントが別の道路セグメントの直後にあることをどのように知るのか) がわかりません。Postgres にクエリを実行して、ある都市から別の都市へのルートを含む折れ線を取得するにはどうすればよいですか? 次のクエリを実行することで、QuantumGis で高速道路全体 (複数の都市にまたがる) のデータを視覚化できます。

select osm_id,way from planet_osm_roads where highway='motorway' and ref='A1';

しかし、興味のある osm_ids のみをルートに表示される順序で取得する方法がわかりません。一般的な解決策を探しているため、where 句でバウンディング ボックスの制約を実行したくありません。また、道路セグメントのシーケンスの順序がどのように保存されるかはまだわかりません。

4

1 に答える 1

1

私が行った方法は、pgrouting、つまり pgr_dijkstra アルゴリズムを使用することでした。OSM データを、osm2pgrouting ツールを使用して pgrouting で使用するのに適した形式にロードしました。

于 2013-11-12T12:03:25.280 に答える