問題タブ [graphhopper]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
graphhopper - ローカル インストールとオンライン サービスの間で異なるルーティング動作
Graphhooper (0.4) のスタンドアロン バージョンを使用して、緯度/経度で住所と地理座標を含むルートを投影しようとしています。
オンラインの例は期待どおりに機能し、車のルートを予測できます。私のローカル インストールでは、同じポイント間のルートを計算できません。地図上に 2 つのポイント (始点と終点) しか表示されませんが、方向やルートが表示されません。
例えば:
作品:
動作しません:
セットアップと構成
ローカル セットアップは、geofabrik.de からダウンロードしたoberbayern -latest.osm.pbfマップ データを使用しています。
また、config.properties ファイルには次の設定があります。
徒歩と自転車のルートは、私のローカル ボックスで計算でき、Graphhopper-API によって生成されたものと同じように見えることに気付きました。
サーバーの起動:
サーバーを次のように起動しました。
graphhopper - Graphhopper は動的なエッジの重みを使用してルーティングできませんか?
一時的にルーティングで使用しない特別なエッジをいくつか作成することを考えています。
私たちの質問によく似た質問を見つけました: GraphHopper は動的なエッジの重みをサポートしていますか? そのため、CH アルゴリズムは使用せず、必要なエッジを除外した後、それらの距離を巨大な値に変更します。
基礎となるのは、私が追加した 2 つのメソッド全体class GraphHopper
です。を追加しましたhopper.flush
が、結果はまだ正しくありません。
processChange()
トラフィック データのフィードバックを表現しようとするメソッドを記述します。渋滞や工事中の場所(緯度と経度)を教えて、processChange()
. このロケーション ポイントから 1 メートル離れたエッジが選択され、これらのエッジがルーティングで一時的に使用されないように、これらのエッジの距離が 10000000 に変更されます。この方法pointToLine()
は、位置点からエッジまでの距離を計算するだけです。
以前の距離を出力し、距離を変更して、それが機能することを確認します。
しかし、ルーティングすると、距離はまだ変わらないことがわかりました。なぜこれが起こるのでしょうか?route.getDistance は edge.getDistance() から異なる値を読み取りますか? エッジの重み値は gh ファイルに保存されますか、それとも gh ファイルはエッジの ID とそれで構成されるノードの ID を保存するだけですか?
graphhopper - Graphhopper は一部の道路を除外します
ルーティングからいくつかの道路を除外する必要があります。この問題を EdgefFilter で実装して解決しますか、それとも Weighting インターフェイスを使用する方が良いですか? ありがとうアントニオ