Xamarin.Forms Posizione e distanza della mappa
Lo Xamarin.Forms.Maps
spazio dei nomi contiene uno Position
struct che viene in genere usato per posizionare una mappa e i relativi puntini e uno Distance
struct che può essere usato facoltativamente durante il posizionamento di una mappa.
Posizione
Lo Position
struct incapsula una posizione archiviata come valori di latitudine e longitudine. Questo struct definisce due proprietà di sola lettura:
Latitude
, di tipodouble
, che rappresenta la latitudine della posizione in gradi decimali.Longitude
, di tipodouble
, che rappresenta la longitudine della posizione in gradi decimali.
Position
gli oggetti vengono creati con il Position
costruttore , che richiede argomenti di latitudine e longitudine specificati come double
valori:
Position position = new Position(36.9628066, -122.0194722);
Quando si crea un Position
oggetto, il valore di latitudine verrà bloccato tra -90,0 e 90,0 e il valore di longitudine verrà bloccato tra -180,0 e 180,0.
Nota
La GeographyUtils
classe ha un ToRadians
metodo di estensione che converte un double
valore da gradi a radianti e un ToDegrees
metodo di estensione che converte un double
valore da radianti a gradi.
Distanza
Lo Distance
struct incapsula una distanza archiviata come double
valore, che rappresenta la distanza in metri. Questo struct definisce tre proprietà di sola lettura:
Kilometers
, di tipodouble
, che rappresenta la distanza in chilometri estesa daDistance
.Meters
, di tipodouble
, che rappresenta la distanza in metri estesa daDistance
.Miles
, di tipodouble
, che rappresenta la distanza in miglia estese dall'oggettoDistance
.
Distance
Gli oggetti possono essere creati con il Distance
costruttore , che richiede un argomento contatore specificato come double
:
Distance distance = new Distance(1450.5);
In alternativa, Distance
gli oggetti possono essere creati con i FromKilometers
metodi factory , FromMeters
FromMiles
, e BetweenPositions
:
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);