左右手坐标系的互换

发布时间:2017-6-29 10:00:16编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"左右手坐标系的互换",主要涉及到左右手坐标系的互换方面的内容,对于左右手坐标系的互换感兴趣的同学可以参考一下。

原文来自:http://blog.csdn.net/zhang11wu4/article/details/47754035】


左手坐标系和右手坐标系的相互转换

Written by Paul Bourke
May 2001

基于计算机的建模和渲染软件似乎都可以分成两类:使用左手坐标系 或者 使用右手坐标系。 比如 OpenGL 用的是右手坐标系而 PovRay 用的则是左手坐标系。这个文档描述了如何把模型的坐标系/摄像机属性 往不同的坐标系去做转换。以下是两个坐标系,它们的不同于自身的矢量积的不同。。。用的是所谓的左手原则和右手原则。

注意:实际上坐标轴的指向跟以上的图并无相关。y不一定要“向上”,z不一定要“向里”,所有不同指向的坐标轴都可以通过适当地旋转得到以上的相同指向。

有两张种方法可以让左右手坐标系互换得到相同的结果。法一:把模型和摄像机设置中所有顶点(这里的顶点是指需要被显示器显示出来的点)的x值取反;法二:一切坐标保持不变,但在渲染图出来后需要做一个水平方向上的翻转。以下的符号p, d, 和u分别表示显示媒介的位置,视觉方向和向上的方向。

模型 1 - 把x轴坐标取反

模型 2 - 水平翻转渲染结果图

这个例子的模型和摄像机坐标并没有随着左右手坐标系的变换而改变。我们可以看到,只是渲染图在最后时刻做了个水平方向上的翻转。

这个通常作为优选方案,大概是它避免了去考量系统到底使用的时什么坐标系,而只需要在图像处理工具的后运行阶段对图片做一个翻转即可。同样地,不管使用的是什么坐标系,使用法一和法二产生的错误都对导致同样严重的结果,这一点上并没有优劣之分。

你可能会琢磨为什么只按水平方向翻转,这其中有什么特别之处么?答案是因为显示媒介向上的方向(u),按照惯例都是垂直于渲染图的。



上一篇:cocos2d
下一篇:Autowired 详解

相关文章

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款