Xamarin.Forms 地图位置和距离
Xamarin.Forms.Maps
命名空间包含在定位地图及其图钉时通常使用的 Position
结构,以及在定位地图时可以选择使用的 Distance
结构。
位置
Position
结构封装存储为纬度和经度值的位置。 此结构定义两个只读属性:
Position
对象是使用 Position
构造函数创建的,该构造函数需要使用指定为 double
值的纬度和经度参数:
Position position = new Position(36.9628066, -122.0194722);
创建 Position
对象时,纬度值将固定在 -90.0 和 90.0 之间,经度值将固定在 -180.0 和 180.0 之间。
注意
GeographyUtils
类包含将 double
值从度数转换为弧度的 ToRadians
扩展方法,以及将 double
值从弧度转换为度数的 ToDegrees
扩展方法。
距离
Distance
结构封装存储为 double
值的距离,该值表示以米为单位的距离。 此结构定义三个只读属性:
Kilometers
,类型为double
,表示Distance
跨越的距离(以千米为单位)。Meters
,类型为double
,表示Distance
跨越的距离(以米为单位)。Miles
,类型为double
,表示Distance
跨越的距离(以英里为单位)。
可以使用 Distance
构造函数创建 Distance
对象,这需要指定为 double
的 meters 参数:
Distance distance = new Distance(1450.5);
或者,可以使用 FromKilometers
、FromMeters
、FromMiles
和 BetweenPositions
工厂方法创建 Distance
对象:
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);