1

关于此处描述的 GTS 格式的一些问题:

TS/LAT:LON/ELEV NAME{LABELS} VALUE
  • LAT提供 a和LON类似的值是否有意义48.441583584062755?还是只提供 6 位精度更方便48.441583?有什么优点/缺点?

  • 如果存储的值是48.441583584062755,是否有任何现有的 warpscript 函数允许转换 LAT 值以获得 6 位精度?

谢谢你的帮助

4

1 回答 1

4

在内部,Warp 10 中的位置存储为 Long(64 位)中的 HHCode。所以纬度和经度都存储在 32 位上。这意味着 Warp 10 中的 HHcode 的最大误差为:

  • 180 / 2^32 = 4.190951585769653E-8 纬度
  • 360 / 2^32 = 8.381903171539307E-8 经度

要回答您的问题,最多 8 位十进制数字。据我所知,进一步减少小数位数并没有真正的优势:它会略微减少所需的带宽和解析数据的时间,但会以精度为代价。

我不知道有任何限制 Double 精度的函数,所以你必须自己做:

48.441583584062755 10 6 ** * ROUND 10.0 6 ** /

如果您经常使用它,请考虑创建一个宏:

<%
  'precision' STORE
  10 $precision ** * ROUND 10.0 $precision ** /
%>
'reduce_precision' STORE

48.441583584062755 6 @reduce_precision
于 2019-11-13T14:27:14.593 回答