Teilen über


Xamarin.Forms Kartenposition und Abstand

Der Xamarin.Forms.Maps Namespace enthält eine Position Struktur, die in der Regel verwendet wird, wenn eine Karte und ihre Pins positioniert werden, und eine Distance Struktur, die optional beim Positionieren einer Karte verwendet werden kann.

Position

Die Position Struktur kapselt eine Position, die als Breiten- und Längengradwerte gespeichert ist. Diese Struktur definiert zwei schreibgeschützte Eigenschaften:

  • Latitude, vom Typ double, der den Breitengrad der Position in Dezimalgrad darstellt.
  • Longitude, vom Typ double, der den Längengrad der Position in Dezimalgrad darstellt.

Position Objekte werden mit dem Position Konstruktor erstellt, der als Werte angegebene double Breiten- und Längengradargumente erfordert:

Position position = new Position(36.9628066, -122.0194722);

Bei der Erstellung eines Position-Objekts wird der Breitengradwert zwischen -90,0 und 90,0 und der Längengradwert zwischen -180,0 und 180,0 geklammert.

Hinweis

Die GeographyUtils-Klasse verfügt über eine ToRadians-Erweiterungsmethode, die einen double-Wert von Grad in Bogenmaß konvertiert, und eine ToDegrees-Erweiterungsmethode, die einen double-Wert von Bogenmaß in Grad konvertiert.

Distanz

Die Distance-Struktur kapselt einen Abstand, der als double-Wert gespeichert ist, der den Abstand in Metern darstellt. Diese Struktur definiert 3 schreibgeschützte Eigenschaften:

  • Kilometers vom Typ double, der die Entfernung in Kilometern angibt, die von Distance zurückgelegt wird.
  • Meters vom Typ double, der die Entfernung in Metern angibt, die von Distance überbrückt wird.
  • Miles vom Typ double, der die Entfernung in Meilen angibt, die von Distance zurückgelegt wird.

Distance-Objekte können mit dem Distance-Konstruktor erstellt werden, der ein als double angegebenes Meter-Argument erfordert:

Distance distance = new Distance(1450.5);

Alternativ können Distance-Objekte mit den FromKilometers-, FromMeters-, FromMiles- und BetweenPositions-Fabrikmethoden erstellt werden:

Distance distance1 = Distance.FromKilometers(1.45); // argument represents the number of kilometers
Distance distance2 = Distance.FromMeters(1450.5);   // argument represents the number of meters
Distance distance3 = Distance.FromMiles(0.969);     // argument represents the number of miles
Distance distance4 = Distance.BetweenPositions(position1, position2);