0

API を実行した後、以下に示すようにジオポイントを取得します。青いものは正しいルートにありますが、赤いものはルートから外れています。最終的なルートを取得するには、ポイントを結合する必要があります。このような赤いポイントを削除するにはどうすればよいですか?

これらのポイントについて私が持っている情報は、緯度、経度、それらが存在する道路です (これらのポイントは逆ジオコーディングされています)。

A、B、C は名前の異なる道路です。「道路」の名前に基づいて除外するには、道路 B の青い点を除外することになる可能性があります。

Google API は役に立ちますか? Google ルート API?

ルート

4

2 に答える 2

3

私が考えることができる最善のことは (独自の distanceToPolyline アルゴリズムを手動でローリングする以外に) google.maps.geometry.poly.isLocationOnEdge (ドキュメント)を使用することです。その後、すべてのポイントにルートの近くにあるかどうかを尋ね、それに応じて行動することができます。

これは私が作成した例です。マーカーを追加してから、オフロードのものを非表示にしてみてください (許容変数で遊ぶこともお勧めします)。

于 2012-10-15T18:23:55.423 に答える
0

RouteBoxer が役立つ場合があります。

ここでの JS 実装 - http://google-maps-utility-library-v3.googlecode.com/svn/trunk/routeboxer/docs/examples.html

ここでの PHP サーバー側の実装 - http://luktek.com/Blog/2011-02-03-google-maps-routeboxer-in-php

冒険好きなら、コードを調べて Ruby ポートを作成してみてください。

于 2012-10-16T09:35:40.170 に答える