左手系与右手系

OpenGL与D3D一个用右手系,一个用左手系,有时候真让人糊涂。稍微整理一下思路吧。

 

在笛卡尔空间中,是没有所谓左手系与右手系之分的。之所以有了左手与右手的原因是因为在我们使用这个笛卡尔空间时,一般都会用一个三元组来表示一个点(a , b , c),而a , b , c分别是在笛卡尔空间上面的三个互相垂直的方向上的偏移位置。设这三个方向分别为(A,B,C),或AXB=C,说明用的是右手坐标系,若AXB=-C,说明用的是左手坐标系。

 

所以基本上来说,从叉乘的代数意义上来看,叉乘的结果应该是右手系的结果,这和中学时学的右手准则是相符的。

而D3D搞出来的左手坐标系,说白了就是把最后一个方向取个了反而已。若把我们第一个方向A取为右,第二个B取为上,在右手坐标系下,第三个C方向应该朝外,这样子刚好符合AXB=C

如果非要把第三个C的正方向取成向里,那AXB得出来的那个值其实还是向外的,由于C的正方向是向里的,所以向外的那个矢量就是-C了。

左手坐标右手坐标是空间中用于指定方向和位置的坐标统。在左手坐标中,X轴指向右侧,Y轴指向上方,Z轴指向观察者的前方;而在右手坐标中,X轴指向右侧,Y轴指向上方,Z轴指向远离观察者的方向。这两种坐标的区别在于Z轴的指向,左手坐标Z轴指向观察者,右手坐标Z轴指向远离观察者。 可以使用简单的手势判断一个坐标左手坐标还是右手坐标。伸出左手,让拇指和食指成“L”形,大拇指指向右侧,食指指向上方,其余手指指向前方。这样建立的坐标就是左手坐标。如果中指能指向Z轴的正方向,则这个坐标左手坐标;反之,如果中指指向Z轴的负方向,则这个坐标右手坐标。 不同的应用领域和软件使用不同的坐标。例如,Maya和OpenGL使用右手坐标,而DirectX、pbrt和PRMan使用左手坐标。这是因为在不同的应用中,对于坐标轴的定义和使用有所不同。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [左手坐标右手坐标详解](https://blog.csdn.net/weixin_42398658/article/details/106054760)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值