Xamarin.Forms Mapa de Posição e Distância
O Xamarin.Forms.Maps
namespace contém uma Position
struct que normalmente é usada ao posicionar um mapa e seus pinos, e uma Distance
struct que pode ser opcionalmente usada ao posicionar um mapa.
Cargo
A Position
struct encapsula uma posição armazenada como valores de latitude e longitude. Essa estrutura define duas propriedades somente leitura:
Latitude
, do tipodouble
, que representa a latitude da posição em graus decimais.Longitude
, do tipodouble
, que representa a longitude da posição em graus decimais.
Position
objetos são criados com o Position
construtor, que requer argumentos de latitude e longitude especificados como double
valores:
Position position = new Position(36.9628066, -122.0194722);
Ao criar um Position
objeto, o valor de latitude será fixado entre -90,0 e 90,0, e o valor de longitude será fixado entre -180,0 e 180,0.
Observação
A GeographyUtils
classe tem um ToRadians
método de extensão que converte um double
valor de graus em radianos e um ToDegrees
método de extensão que converte um double
valor de radianos em graus.
Distância
A Distance
struct encapsula uma distância armazenada como um double
valor, que representa a distância em metros. Essa estrutura define três propriedades somente leitura:
Kilometers
, do tipodouble
, que representa a distância em quilômetros que é percorrida peloDistance
.Meters
, do tipodouble
, que representa a distância em metros que é estendida peloDistance
.Miles
, do tipodouble
, que representa a distância em milhas que é percorrida peloDistance
.
Distance
objetos podem ser criados com o Distance
construtor, que requer um argumento meters especificado como um double
:
Distance distance = new Distance(1450.5);
Como alternativa, Distance
os objetos podem ser criados com os FromKilometers
métodos , FromMeters
, FromMiles
e BetweenPositions
factory:
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);