2012-05-16 59 views
1

有人可以幫我或分享一些關於如何在Windows Phone芒果上實現GeoFencing的代碼。如何在Windows Phone上進行GeoFencing芒果

我有地理位置列表(緯度和經度),並在每個位置更新我想驗證這個當前位置是在我們換句話說,稱爲GeoFencing的列表,但我想在本地做,而不用觸摸任何WebService etc ... 所以我想知道這是否有可能...

另外我想實現這個沒有阻止主UI線程。

請指教。

+0

您的位置是否定義了一個虛擬多邊形,或者您是否有興趣接近它們? –

+0

您是否看到以下博客文章:http://blogs.msdn.com/b/dragoman/archive/2010/10/13/wp7-code-geofencing-with-the-geolocation-api-and-rx.aspx –

+0

Rowland,靠近你的意思是圈子?其實我同時需要虛擬多邊形和圓圈,但至少要走一個頭什麼是容易和可實現的,請指導 – Shax

回答

0

在Microsoft樣品形成整潔應用(樣品爲芒果的一部分) - 在Todo.DataAccess項目,GeoCodeDistanceCalc其與計算在一對座標之間的距離靜態類:

return radius * 2 * Math.Asin(Math.Min(1, Math.Sqrt((Math.Pow(Math.Sin((DiffRadian(lat1, lat2))/2.0), 2.0) + Math.Cos(ToRadian(lat1)) * Math.Cos(ToRadian(lat2)) * Math.Pow(Math.Sin((DiffRadian(lng1, lng2))/2.0), 2.0))))); 

(其中半徑是地球半徑,無論你想要結果的單位)

對於多邊形方法中的點,有一個whole Wikipedia article on the subject,但在過去,我發現光線投射算法相對容易實現。

相關問題