地球纬度&经度到纬度& 3D球体上的经度 [英] Earth Latitude & Longitude to Latitude & Longitude on a 3D sphere

查看:106
本文介绍了地球纬度&经度到纬度& 3D球体上的经度的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我以前从来没有做过这种事情,但我正在做的是制作一个3D球体(它具有类似纹理的地球),就像我想用特定谷歌地图的纬度和经度绘制位置的形状一样现在我想知道,我的球体半径明显小于地球半径,这是否仍然影响经纬度值到xyz的位置,给出如下公式:

  tx = radiusOfSphere * cos(纬度)* cos(经度); 
ty = radiusOfSphere * -sin(latitude);
tz = radiusOfSphere * cos(纬度)* sin(经度);


解决方案

是。




    tx ^ 2 + ty ^ 2 + tz ^ 2 = radius ^ 2& math = radius ^ 2,所以你在你的球面上。如果纬度= 0,那么ty = 0,
  • ,所以你在一个平行于赤道的圆上。
  • b $ b
  • 如果longitude = 0,那么tz = 0,所以你在子午线上。



只要检查你在xyz 中不是 xzy zyx ,并且North是x> 0且East y> 0,或者任何符号与你的3D渲染软视图。

I have never done this sort of thing before,but what I am doing is making a 3D sphere (which has earth like texture) like shape where I want to plot locations onto it using the latitude and longitude from google maps of specific locations.Now I am wondering , my sphere radius is obviously smaller than earths radius, would this still effect the position of the latitude and longitude values to xyz given the following formula:

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

解决方案

Yes.

  • tx^2 + ty^2 + tz^2 = radius^2 & math = radius^2, so you are on your sphere.
  • if latitude=0, then ty = 0, so you are on a circle parallel to the equator.
  • if longitude=0, then tz = 0 so you are on the a meridian.

Just check that you are in xyz not xzy or zyx, and that North is x>0 and East y>0, or whatever signs are compatible with point of view of your 3D rendering soft.

这篇关于地球纬度&经度到纬度& 3D球体上的经度的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆