c++ - 存储坐标的最佳方式 : struct of uints or double?

标签 c++ variables geo

<分区>

我的地理坐标格式为 N000.11.22.333 E444.55.66.777。精度需要毫秒。我需要执行计算,例如给定坐标 0、角度和距离计算坐标。当然,我想保持精度不少于毫秒。这个和其他计算算法通常使用三角函数来得到结果。 哪种解决方案更好:1)使用包含度,分,秒和毫秒的结构作为单位和重载运算符来操作它们; 2)使用double类型并将坐标转换为十进制 View 进行计算。因为我认为 float 类型在这些计算上不够稳定。

仅用于qt 5.9 x64项目,msvc 2017,win平台

最佳答案

选择最简单的(几乎肯定是双倍)。 double 比尺子或细心的测量员更准确。许多导航软件对纬度使用一个 32 位整数,对经度使用一个 32 位整数。

关于c++ - 存储坐标的最佳方式 : struct of uints or double?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45828246/

相关文章:

c++ - Make/gcc 神秘错误 2 : how to have more information?

c++ - 为什么 Clang 更喜欢主模板而不是 C++17 的特化?

javascript - 什么是标志变量?

function - Postgresql 将选择查询分配给函数中的变量

c# - 谷歌地理定位 API 库

C++直接初始化字段与默认构造函数中的初始化列表

c++ - 传递显式空参数包

javascript - 重新加载时从 url 获取 php 变量而不刷新

r - 使用 spsample() 对 SpatialPolygonsDataFrame 进行采样会导致 seq.default() 出现错误

android - Intent 中的地理在 Android 应用程序中不起作用