- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
在计算 2 点之间的距离时,Postgres 的 Spatial 插件或任何用于该方式的 Spatial 包是否会考虑海拔高度?
我知道地球的近似曲率中的空间包因素,但如果一个位置在山顶而另一个位置靠近大海 - 这两点之间的计算差异似乎会有很大差异如果不考虑海拔差异。
另外请记住,如果我有 2 个点处于相同的海洋高度,但在这 2 个点之间存在一座山 - 距离包应该考虑到这一点。
最佳答案
这些因素根本没有被计算在内。为什么?该软件只知道这两个特征(您获得距离的两个点,球体/椭球体和基准/投影因子)。
要做到这一点,您可能需要使用开发的线串,您将在其中将您的点与 n 个顶点连接起来,每个顶点都是 Z 感知的。
想象一下(松散的 WKT):LINESTRING((0,1,2),(0,2,3),(0,3,4),(0,10,15),(0,11,- 1)).
要求软件计算每个顶点之间的距离并相加,会考虑地形的变化。但如果没有类似的东西,就不可能绘制出地形的不规则性。
所有 GIS 软件都无法自行判断地形中的那些不规则性是什么,因此不会将它们考虑在内。
您可以使用 ArcGIS(和其他软件)等软件创建此类线串(自动),使用线(两点之间)和表面文件,例如 NASA(SRTM 项目)免费提供的文件。这些文件采用光栅格式,每个像素都有一个以米为单位的 X Y 和 Z 值。遍历你想要的线路,再加上那个地形剖面,就可以实现你想要实现的计算。如果您需要进行 super 精确的计算,则需要一个精确的表面,以及该剖面线每个顶点的精确 Z 值。
清理了吗?
关于database - map : Does calculating distance between 2 points factor in altitude?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1375003/
我是 GPS Android 编程的新手,我想制作一个应用程序,它可以在我移动时告诉我准确的米高度。 不幸的是,我不知道从哪里开始。我需要哪种传感器才能在每部手机上使用?我已经读到有两种方法,一种是准
我理解海平面以下为负值,海平面以上为正值的概念+有垂直精度来检查这个值的合理性。 我对飞行中的 GPS 数据感兴趣。 altitude 的最大或近似最大值是多少,以便我可以区分飞行和公路旅行。 我明白
我有这个 gps 代码,它获取 gps 数据并写入日志: #!/usr/bin/python from systemd import journal import gps import time im
在我的 HTML5 页面中,我想检索设备的高度(我正在使用 Chrome 移动版在我的 Nexus 5 上进行测试)。 如 HTML5 Geolocation Altitude 中所述,Geoloca
我希望使用 Redis 的 GEORADIUS 命令。 但是,该命令只在给定经纬度的二维圆范围内进行搜索。我还需要进行高度搜索,从而在三维球体范围内找到结果。 我如何在 Redis 中实现这一目标?
我正在尝试开发一个应用程序,我必须在其中跟踪人们是否在建筑物的不同楼层上行。我尝试使用 GeolocationAPI,它以海拔米为单位提供海拔高度,但由于它是同一栋建筑,纬度、经度将相同,海拔高度始终
我想获得一个基于地平面的引用 CMAttitude,例如,绘制地平线。 实际上,我可以通过随时获取引用姿态来旋转我的 View ,并使用 multiplyByInverseOfAttitude 获取与
在计算 2 点之间的距离时,Postgres 的 Spatial 插件或任何用于该方式的 Spatial 包是否会考虑海拔高度? 我知道地球的近似曲率中的空间包因素,但如果一个位置在山顶而另一个位置靠
对于我正在编写的应用程序,我们将 IOS 设备与外部传感器连接,该传感器通过本地 wifi 网络输出 GPS 数据。该数据以关于高度的“原始”格式出现。一般来说,所有 GPS 高度都需要根据当前位置应
我是一名优秀的程序员,十分优秀!