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

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

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

【问题讨论】:

    标签: geolocation geometry


    【解决方案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 的空间表示。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-04-06
    • 2012-03-29
    • 1970-01-01
    • 1970-01-01
    • 2020-03-13
    相关资源
    最近更新 更多