如何使用地理定位器确定纬度是北还是南,或者是西经还是东经?
Posted
技术标签:
【中文标题】如何使用地理定位器确定纬度是北还是南,或者是西经还是东经?【英文标题】:How to determine if Latitude is North or South, or Longitude West or East with Geolocator? 【发布时间】:2015-01-03 11:43:02 【问题描述】:我正在 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;
亲切的问候, 尼尔斯
【问题讨论】:
【参考方案1】:看看here。
您将获得从 -90° (S) 到 90° (N) 和 -180° (W) 到 180° (E) 的值,而不是添加 S/N 或 W/E 来指示方向。文档没有明确指定哪个方向是正的,但我在这里写的应该是最常见的约定。
【讨论】:
【参考方案2】:常识:):
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;
【讨论】:
以上是关于如何使用地理定位器确定纬度是北还是南,或者是西经还是东经?的主要内容,如果未能解决你的问题,请参考以下文章
从 CLLocationCoordinate2D 中找到边界框