如何将向量和矩阵从左手坐标系转换至右手坐标系

 我来答
浪漫弄扁舟2356
2017-08-07 · TA获得超过1122个赞
知道小有建树答主
回答量:2269
采纳率:0%
帮助的人:670万
展开全部
将右手坐标系转换成左手坐标系,z值取反就行了。
从定义可知,左右手的区别就是z轴一正一负,当然z取反就转换了。
透视矩阵将把坐标系映射到裁剪空间内,而这个矩阵(perspectiveFieldOfViewLH/perspectiveFieldOfViewRH)已经假定了坐标系是左手还是右手。反过来说,在透视之前,使用哪种坐标系都是无所谓的——因此在透视前的变换矩阵都是统一通用的,包括投影和反射——只需要在透视时确定种类即可。进一步说,就是要在透视前的最后一步上,决定是否反转z轴!而这最后一步是相机的视图矩阵,因此可以在它后面加上反转的语句——也就是viewMatrix.appendScale(1,1,-1)——这样所有的顶点就都会反转了,并且正反面并不会受到影响,因为它们从试图空间中看起来是一样的。
需要注意的是,知道视图矩阵其实是把整个世界搬到了原点,也就是说,视图矩阵和模型矩阵其实是一回事,只不过,把特定的模型矩阵(相机)求逆后应用在了其它模型矩阵上而已——当然,也可以直接反着赋值,比如相机左移,而赋值却是正数——但为了看着好看,通常还是采用正常赋值,而在连乘时求逆(viewMatrix.invert())的方法实现这一切。明白了原理,那就应该知道,z取反是在最后一步进行——也就是在求逆后进行的。
长荣科机电
2024-10-27 广告
采购咨询热线:133 1649 5092 深圳市长荣科机电设备有限公司 是一家专业从事滑台模组、线性模组、直线模组、直线滑台、电动滑台、精密机械手、伺服定位滑台自动化设备集研发、制造、销售服务于一体的高新企业。本公司拥有-批长期从事于自动化... 点击进入详情页
本回答由长荣科机电提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式