gpt4 book ai didi

c# - 从英国坐标转换为标准 WGS84 nmea

转载 作者:可可西里 更新时间:2023-11-01 11:36:23 32 4
gpt4 key购买 nike

我已经发布了类似的帖子。我确实在理论上得到了答案,但我真的需要有人帮助我。

所以我正在使用这个 EXAMPLE用于测试我的 GPS。我想要做的是如何获得标准的十进制值,如纬度和经度的 56,322415。因为现在我得到了 5304,254 个值。

我需要这种形式,因为我会将其用于 Google map 。

你能检查代码并告诉我应该遗漏什么或者如何将它转换为 WGS84 格式吗?

谢谢。

编辑:

这是解释我运行程序时看到的图片 enter image description here

这是代码项目页面之一:

enter image description here

编辑 2:

所以当我使用 THIS CONVERTER看看当我有学位时我需要得到什么小数值我没有得到相同的值。

这是我应该得到的值:

enter image description here

这是我在程序中获得的值(value):

46.64662666666667

知道为什么我无法获得相同的转化率吗?

最佳答案

ParseNMEA 函数中的以下行是将 WGS84 坐标转换为英国条例测量坐标的行:

return Transform(deciLat, deciLon, height);

因此,如果您删除该行并仅使用 deciLat 和 deciLon 值,您应该没问题...

问题更新后添加:

您所指的代码没有考虑本地数字格式,因此如果出错,可能是因为错误的小数符号匹配。

您可以使用以下函数进行转换,假设输入始终采用不变区域性(带小数点):

string[] arrLon = strLon.Split(new char[]{'°', '"'}, StringSplitOptions.RemoveEmptyEntries);
double dblLon = double.Parse(arrLon[0]) + double.Parse(arrLon[1], new System.Globalization.NumberFormatInfo()) / 60;
double deciLon = arrLon[2] == "E" ? dblLon : - dblLon;

附加信息:

数字格式信息:http://msdn.microsoft.com/en-us/library/system.globalization.numberformatinfo.aspx

关于c# - 从英国坐标转换为标准 WGS84 nmea,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10556435/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com