查看: 2660|回复: 8

怎么在地心坐标系设置方位(航向,俯仰,横滚)

[复制链接]

该用户从未签到

发表于 2010-10-15 10:56:26 | 显示全部楼层 |阅读模式
用了一个别人建的地形模型,用的地心坐标系,以前设置方位(航向,俯仰,横滚)用平面坐标系的模型直接绕地形左下角为原点局部坐标系的坐标轴旋转就行了,现在地面为弧形的,似乎不能再用原来的方法了,不知道大家有啥好的方法。

该用户从未签到

发表于 2010-10-15 16:33:45 | 显示全部楼层
可以先从从经纬度转换到XYZ

该用户从未签到

 楼主| 发表于 2010-10-15 23:45:39 | 显示全部楼层
1# usr1
谢谢王锐,我现在有航迹点的经纬度高度和姿态信息,位置是可以由经纬度计算得到地心坐标系的XYZ坐标,但是姿态比如俯仰不知道怎么确定。举个例子,在平面坐标系(可能名称不准确,就是以地球表面为xy平面,赤道为y轴,垂直地面向上为z轴方向的坐标系)中沿赤道飞行,如果姿态的俯仰角为a,直接绕x轴旋转a就确定了飞机的姿态。但是现在地面为弧形,不能用原来的方法确定旋转轴,因为以前的旋转轴x轴现在是一条弧线。这个问题VR大师“口口广大”好像也遇到过,不知道他怎么解决的,好像这个月他还没上过论坛。

该用户从未签到

 楼主| 发表于 2010-10-15 23:57:20 | 显示全部楼层
郁闷了,以前都是自己网上下30米精度高程数据用vpb做模型,没用过地心坐标系,这次因为纹理数据涉密拿不到,能要到一个模型已经不错了.再问个vpb的问题:没有纹理数据vpb能将模型根据高度设置成不同颜色么?问过几个前辈,要么用VTP,要么自己用ps一点一点的做一个纹理,两种方法都不简单。

该用户从未签到

发表于 2010-10-17 16:04:45 | 显示全部楼层
首先我要批评楼主,有的事情可以上来就问,比如方向性的问题,让前辈给你个研究或者调研的方向。
有些事情是需要自己动动脑子的,这是一个简单的数学问题。
第一,你根据飞行器的位置计算机体坐标系的Y向量,就是地心到飞机位置的连线向量。
第二,计算北向量到投影平面的向量,此处的投影平面是指以机体Y向量为法线且包含飞机位置的平面,一个点和一个法线就可以确定一个平面。此处得到的向量可以认为是机体坐标系Z向量。
第三,叉积这两个向量得到X向量。
最后用这几个向量组矩阵旋转飞机模型即可。
不知道楼主听明白没有。

该用户从未签到

发表于 2010-10-17 17:36:32 | 显示全部楼层
楼上的很精辟!

该用户从未签到

 楼主| 发表于 2010-10-17 21:52:17 | 显示全部楼层
5# sky11811
批评的对,可能是我没说清楚。目前我就是这样做的,在当前位置可以确定一个局部坐标系,经过地心球面半径所在直线z轴,过当前点两切线xy轴,其中一条投影到球面即北向量。以前用平面地形模型就是这样处理的,但是我现在地形模型为弧形的,还这样算的话会出现问题,飞机(视点)的运动不连续,比如俯仰会出现明显的摆动,数据都是真实飞机录下来的然后插值处理的,没有问题(用自己下载的dem做的没有纹理的平面模型试过)。
这个算和我自己的应用相关的问题吧,而且你所说的三条在TrackballManipulator里面都有实现。

该用户从未签到

 楼主| 发表于 2010-10-17 21:54:20 | 显示全部楼层
再发个帖加点威望

该用户从未签到

发表于 2010-10-18 21:34:13 | 显示全部楼层
7# usr1 地形是平面的时候根本没有这么复杂,只有地形是球面的时候才需要,平面的时候简单的三次旋转即可。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

OSG中国官方论坛-有您OSG在中国才更好

网站简介:osgChina是国内首个三维相关技术开源社区,旨在为国内更多的技术开发人员提供最前沿的技术资讯,为更多的三维从业者提供一个学习、交流的技术平台。

联系我们

  • 工作时间:09:00--18:00
  • 反馈邮箱:1315785073@qq.com
快速回复 返回顶部 返回列表