转换为 JSON 时坐标分辨率较低
Getting low resolution on coordinates when converting to JSON
我正在向斯德哥尔摩市托管的地理服务器发出 WFS 调用,该服务器显示在某些日子禁止停车的地方。
原始数据显示在 XML 中,但由于您可以在 WFS 调用中请求其他数据格式 - 我正在调用 &outputFormat=application/json
。然后奇怪的事情开始发生了:
原始经纬度坐标
如果您不要求任何坐标格式 - 结果将以 SWEREF99
和 XML 格式显示。
如果保留 XML
作为输出,但更改为 WGS84
格式,则值的分辨率为 6 位小数
<gml:posList>59.297013 18.019718 59.296889 18.019697</gml:posList>
JSON输出
当您要求地理服务器将数据转换为 JSON 时,传送的结果如下所示:
[[18.0474,59.2943],[18.0476,59.2942]]
如您所见,JSON 格式删除了除前 4 位以外的所有小数。
On spatialreference.org this can be read about the bounds of WGS84:
WGS84 Bounds: -180.0000, -90.0000, 180.0000, 90.0000
我的问题
这是否意味着如果我在 WGS84 中请求坐标,我将无法获得更高分辨率的坐标?
我可以提出任何其他 WFS 请求以获得完整分辨率吗?还是斯德哥尔摩市需要更改其数据输出设置?
GeoServer 允许服务器所有者 set the number of decimal digits 的 JSON & GML 输出。所以我希望您看到两种格式的相同输出,除非它们对 JSON 数据进行某种 post 处理。
根据您要对数据执行的操作,小数点后 4 位应该没问题,正如 this question it will be accurate to ~10m which is as good as your GPS. If you need better accuracy then you should probably get your data projected into SWEREF99 中所讨论的那样,这应该会给您亚米级的精度(当然,假设测量得很好) .
我正在向斯德哥尔摩市托管的地理服务器发出 WFS 调用,该服务器显示在某些日子禁止停车的地方。
原始数据显示在 XML 中,但由于您可以在 WFS 调用中请求其他数据格式 - 我正在调用 &outputFormat=application/json
。然后奇怪的事情开始发生了:
原始经纬度坐标
如果您不要求任何坐标格式 - 结果将以 SWEREF99
和 XML 格式显示。
如果保留 XML
作为输出,但更改为 WGS84
格式,则值的分辨率为 6 位小数
<gml:posList>59.297013 18.019718 59.296889 18.019697</gml:posList>
JSON输出
当您要求地理服务器将数据转换为 JSON 时,传送的结果如下所示:
[[18.0474,59.2943],[18.0476,59.2942]]
如您所见,JSON 格式删除了除前 4 位以外的所有小数。
On spatialreference.org this can be read about the bounds of WGS84: WGS84 Bounds: -180.0000, -90.0000, 180.0000, 90.0000
我的问题
这是否意味着如果我在 WGS84 中请求坐标,我将无法获得更高分辨率的坐标? 我可以提出任何其他 WFS 请求以获得完整分辨率吗?还是斯德哥尔摩市需要更改其数据输出设置?
GeoServer 允许服务器所有者 set the number of decimal digits 的 JSON & GML 输出。所以我希望您看到两种格式的相同输出,除非它们对 JSON 数据进行某种 post 处理。
根据您要对数据执行的操作,小数点后 4 位应该没问题,正如 this question it will be accurate to ~10m which is as good as your GPS. If you need better accuracy then you should probably get your data projected into SWEREF99 中所讨论的那样,这应该会给您亚米级的精度(当然,假设测量得很好) .