地球经纬度到 3D 球体上的纬度和经度

Posted

技术标签:

【中文标题】地球经纬度到 3D 球体上的纬度和经度【英文标题】:Earth Latitude & Longitude to Latitude & Longitude on a 3D sphere 【发布时间】:2013-03-04 21:47:51 【问题描述】:

我以前从未做过这种事情,但我正在做的是制作一个 3D 球体(具有类似地球的纹理),我想使用特定的谷歌地图中的纬度和经度在其上绘制位置位置。现在我想知道,我的球体半径显然小于地球半径,这仍然会影响纬度和经度值的位置到 xyz 给定以下公式:

tx = radiusOfSphere * cos(latitude) * cos(longitude);
ty = radiusOfSphere * -sin(latitude);
tz = radiusOfSphere * cos(latitude) * sin(longitude);

【问题讨论】:

【参考方案1】:

是的。

tx^2 + ty^2 + tz^2 = radius^2 & math = radius^2,所以你在你的球体上。 如果 latitude=0,则 ty = 0,因此您位于与赤道平行的圆上。 如果经度=0,则 tz = 0,因此您在子午线上。

只需检查您是否在 xyz 而不是 xzyzyx,并且北是 x>0 和东 y>0,或者任何标志都与您的 3D 渲染软件的角度兼容。

【讨论】:

好的,我正在使用一个 java 库的处理。所以如果我使用 6371 作为地球半径,如果我的球体是半径 250。 最好的方法是尝试。我记得我花了一天时间来改变 y 的唱法(这是软中的 z),然后才意识到我实际上是在球体内绘制点。 嗯,试着改变 x,y,z 看看会发生什么,得到非常奇怪的结果,而不是我所期待的。 :// 最好的方法是尝试。我记得我花了一天时间改变 y 的唱法(这是软中的 z),然后才意识到我实际上是在球体内绘制点——试试伦敦、巴黎、波士顿、纽约、华盛顿和墨尔本看看是否您同意 Processing 的空间表示。

以上是关于地球经纬度到 3D 球体上的纬度和经度的主要内容,如果未能解决你的问题,请参考以下文章

怎样描述一个地方的经度和纬度·

php 计算经纬度之间相差多少公里

将纬度和经度转换为 3D 空间中的点

经纬度转换成XYZ坐标

计算两个经纬度之间的距离

在地球仪上找出下表中经纬度附近的城市名称