我正在开发一个类似于模拟的应用程序,它必须连续具有点(纬度,经度)的大地水准面高度。由于 NETGeographicLib 在 GPU 中工作而表现出高性能和高精度,我更喜欢这个库,而不是 PyGeodesy、GeoidHeightDotnet 或我所知道的其他库。
1 - 但是,当我在系统中反复强制 NETGeographicLib 的 ConvertHeight() 方法以多线程以及点后六位精度计算某点的大地水准面高度时,RAWVAL() 方法会引发错误。
我的日志是这么说的;
There is an error in Geoid Height Calculation with lat: 41.377132999997144 lon: 28.448859000009104 with the error: GeographicLib.GeographicException: Error reading C:\Users\xxxx\Desktop\xxxx\xxxx\GeoidUndulationCalculatorWPF\bin\Debug\net6.0-windows/geoids\egm96-5.pgm: Index was outside the bounds of the array.
2 - 我想到的第一个意见是,点后面的数字可能会导致错误。如果是的话我可以使用多少位?
3 - 就像错误所说的“egm96-5.pgm:索引超出了数组的范围。”文件中的搜索值超出范围。那么你知道“egm96-5.pgm”文件的界限是什么值吗?
4 - 或者您是否知道任何与 NETGeographicLib 执行相同操作的替代库,它可以在 C# 中以高性能和高精度计算 某个点(纬度、经度)的大地水准面高度?
谢谢你的兴趣。