如何使用Geolocator确定纬度是北或南,还是经度西或东?

时间:2015-01-03 11:43:02

标签: c# geolocation winrt-xaml win-universal-app

我正在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;

亲切的问候, 尼尔斯

2 个答案:

答案 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;
    }