2017-08-02 11 views
2

GPXファイルのアンカーポイントを使用してMapControlに描画されたMapPolylineがあります。ポジションがポリラインから外れていることを検出するにはどうすればよいですか?私はアンカーポイント間の距離を測定しようとしました.20メートル離れていれば、コースのエラーが発生します。この問題は直線上にあり、アンカーポイントは実際には互いに離れていますが、私はPolyLine上にいますが、オフコースエラーが発生します。UWPのMapControlでMapPolylineのコースを検出する

これを見てください:あなたは、私がWAYコースを外れています見ることができるように

enter image description here

を。これを検出するには?

Googleのマップ用JavaScript APIには、正確にこの目的のためにisLocationOnEdge()というメソッドがあります。 UWPのようなものはありますか?

+0

提供されていない場合は、距離を手動で計算できます。ポリラインから2つの接続点(A&B)から直線を1つ取り、ロケーションポイントで三角形を作成します。いずれかの角度が90より大きい場合、距離はPointAからLPの最小値、PointBからLPまでの最小値です。すべての角度が90°未満の場合、距離はLPからラインまでの垂直距離です。次に、同じ数式を他の行に適用し、どちらが最短かを決定します。 –

答えて

0

GoogleのPolyUtilをGoogle Maps SDKからUWPに移植してこの問題を解決しました。

ここにはPolyUtilのソースコードがあります。

関連する問題