Xamarin.Forms Расположение карты и расстояние
Пространство Xamarin.Forms.Maps
имен содержит Position
структуру, которая обычно используется при расположении карты и его закреплений, а Distance
также структуру, которую можно использовать при расположении карты.
Position
Структуру Position
инкапсулирует позицию, хранящуюся в виде значений широты и долготы. Эта структура определяет два свойства только для чтения:
Latitude
double
тип, представляющий широту позиции в десятичных градусах.Longitude
double
типа, который представляет долготу позиции в десятичных градусах.
Position
Объекты создаются с помощью конструктора Position
, для которого требуются аргументы широты и долготы, указанные в качестве double
значений:
Position position = new Position(36.9628066, -122.0194722);
При создании Position
объекта значение широты будет зажато в диапазоне от –90,0 до 90,0, а значение долготы будет зажато в диапазоне от –180,0 до 180,0.
Примечание.
Класс GeographyUtils
имеет ToRadians
метод расширения, который преобразует double
значение из градусов в радианы, и ToDegrees
метод расширения, который преобразует double
значение из радианов в градусы.
расстояние;
Структуру Distance
инкапсулирует расстояние, хранящееся в виде double
значения, которое представляет расстояние в метрах. Эта структура определяет три свойства только для чтения:
Kilometers
double
тип , который представляет расстояние в километрах, охватываемыхDistance
.Meters
, типdouble
, который представляет расстояние в метрах, охватываемомDistance
.Miles
, типаdouble
, который представляет расстояние в милях, охватываемыхDistance
.
Distance
Объекты можно создавать с помощью конструктора Distance
, для которого требуется аргумент счетчиков, указанный double
в качестве:
Distance distance = new Distance(1450.5);
Кроме того, Distance
объекты можно создавать с FromMiles
FromKilometers
FromMeters
помощью методов , и 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);