De serie "Desktop kaartapp-ontwikkeling"Deel6.
Deze keer voegen we een functie toe om de huidige locatie van het apparaat weer te geven in de kaartapp die we in deel5 hebben gemaakt. De voorbeeldcode voor de functie die in dit artikel wordt geïntroduceerd, is beschikbaar op Esri Japan GitHub .
Huidige locatie weergeven
ArcGIS Maps SDK for .NET (hierna "SDK" genoemd) maakt het eenvoudig om de huidige locatie van het apparaat op de kaart weer te geven. Er zijn functies beschikbaar zoals het tonen van een symbool op de huidige locatie en automatisch navigeren zodat de huidige locatie in het midden van de kaart blijft bij veranderingen. De huidige locatie kan worden verkregen via de ingebouwde locatieprovider van het apparaat, maar ook via extern aangesloten GNSS apparaten of gesimuleerde locaties (tekstgegevens). Deze keer implementeren we een functie om de huidige locatie die wordt geleverd door de ingebouwde locatieprovider van een Windows apparaat op de kaart weer te geven.
1. Voeg na de aanroep van InitializeComponent() in MainWindow.xaml.cs de instelling toe om de LocationDisplay van de MapView in te schakelen zodat de huidige locatie wordt weergegeven.
MainWindow.xaml.cs
public MainWindow()
{
InitializeComponent();
// Toon huidige locatie op de kaart
MainMapView.LocationDisplay.IsEnabled = true;
MainMapView.LocationDisplay.AutoPanMode = LocationDisplayAutoPanMode.Recenter;
}
Tips: Voor de eigenschap AutoPanMode van LocationDisplay zijn er vier modi beschikbaar.
- Recenter: Wanneer de huidige locatie buiten het zichtbare kaartgebied beweegt, verplaatst de kaart zich automatisch zodat de huidige locatie in het midden komt te staan.
- Navigation: Het symbool voor de huidige locatie blijft op één punt op het scherm staan, terwijl de kaart automatisch beweegt en roteert op basis van updates van de huidige locatie en rijrichting./
- CompassNavigation: Het symbool voor de huidige locatie blijft op één punt op het scherm staan, terwijl de kaart automatisch beweegt en roteert op basis van de oriëntatie van de gebruiker (gebaseerd op magnetisch noorden)./
- Off: Alleen het symbool voor de huidige locatie op de kaart wordt bijgewerkt. De kaart zelf beweegt niet als de huidige locatie verandert.
Locatieservices inschakelen op Windows-apparaat
Als locatieservices zijn uitgeschakeld op uw Windows-apparaat, schakel deze dan in om functies van het SDK te kunnen testen.
'[設定] → [プライバシーとセキュリティ] → 「アプリのアクセス許可」カテゴリにある [位置情報] → [位置情報サービス] の順でクリックし、下記項目をオンにします。
- 位置情報サービス
- アプリに位置情報へのアクセスを許可する
- デスクトップ アプリに位置情報へのアクセスを許可する
2. アプリを実行してみましょう。デバイスの位置情報サービスで提供される現在地に青い円が表示されているのが確認できます。
第6弾「現在地の表示」ではデバイスの現在地をマップ上に表示する方法を紹介しました。次回、第7弾では住所検索機能の実装方法を紹介します。
関連リンク