Xamarin.Forms Umístění a vzdálenost mapy
Xamarin.Forms.Maps
Obor názvů obsahuje Position
strukturu, která se obvykle používá při umístění mapy a jeho špendlíků, a Distance
strukturu, která se dá volitelně použít při umístění mapy.
Position
Struktura Position
zapouzdřuje pozici uloženou jako hodnoty zeměpisné šířky a délky. Tato struktura definuje dvě vlastnosti jen pro čtení:
Latitude
, typudouble
, který představuje zeměpisnou šířku pozice v desetinných stupních.Longitude
, typudouble
, který představuje délku pozice v desetinných stupních.
Position
objekty se vytvářejí pomocí konstruktoru Position
, který vyžaduje argumenty zeměpisné šířky a délky zadané jako double
hodnoty:
Position position = new Position(36.9628066, -122.0194722);
Při vytváření objektu Position
se hodnota zeměpisné šířky uchytne mezi -90,0 a 90,0 a hodnota délky se uchytne mezi -180,0 a 180,0.
Poznámka:
Třída GeographyUtils
má rozšiřující metodu ToRadians
, která převádí double
hodnotu ze stupňů na radiány a rozšiřující metodu ToDegrees
double
, která převádí hodnotu z radiánů na stupně.
Vzdálenost
Struktura Distance
zapouzdřuje vzdálenost uloženou double
jako hodnotu, která představuje vzdálenost v metrech. Tato struktura definuje tři vlastnosti jen pro čtení:
Kilometers
, typudouble
, který představuje vzdálenost v kilometrech, které jsou rozloženyDistance
.Meters
, typudouble
, který představuje vzdálenost v metrech, které jsou rozloženyDistance
.Miles
, typudouble
, který představuje vzdálenost v mílích, které jsou rozloženyDistance
.
Distance
objekty lze vytvořit pomocí konstruktoru Distance
, který vyžaduje argument měřiče zadaný jako double
:
Distance distance = new Distance(1450.5);
Alternativně Distance
lze objekty vytvořit pomocí FromKilometers
metod , FromMeters
, FromMiles
a 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);