我正在WinRT中构建一个通用应用程序,并且能够使用Geolocator获取设备的纬度经度。但是对于我的输入,我也需要方向(纬度为北,南为纬度,东经为东经)。
但我如何知道纬度或经度是否在特定方向内?是否有内置方式,或者计算方法是什么?
51.3705 至 51.3705N
6.1724 至 6.1724E
Geoposition GeoPosition = await GeoLocator.GetGeopositionAsync();
double Latitude = GeoPosition.Coordinate.Point.Position.Latitude;
double Longitude = GeoPosition.Coordinate.Point.Position.Longitude;
亲切的问候, 尼尔斯
答案 0 :(得分:1)
看看here。
不是添加S / N或W / E来指示方向,而是获得从-90°(S)到90°(N)和-180°(W)到180°(E)的值。文档没有明确指出哪个方向是积极的,但我在这里写的应该是最常见的约定。
答案 1 :(得分:1)
常识:):
private string ConvertLatitudeToGPS(double Latitude)
{
string Direction = "";
double UnformattedLatitude = Latitude;
if (Latitude > 0)
{
Direction = "N";
}
else
{
UnformattedLatitude = UnformattedLatitude * -1;
Direction = "S";
}
string GPSString = UnformattedLatitude.ToString("0.0000") + Direction;
return GPSString;
}
private string ConvertLongitudeToGPS(double Longitude)
{
string Direction = "";
double UnformattedLongitude = Longitude;
if (Longitude > 0)
{
Direction = "E";
}
else
{
UnformattedLongitude = UnformattedLongitude * -1;
Direction = "W";
}
string GPSString = UnformattedLongitude.ToString("0.0000") + Direction;
return GPSString;
}