AR的坐标系统概述
2015-11-17 22:30
204 查看
在ARToolKit中,坐标系统是很重要的,需要详细了解下,才不会在错误的地方放置目标和渲染目标。
1:
![](http://www.hitl.washington.edu/artoolkit/documentation/images/ATK-coordinates.jpg)
使用arGetTransMat可以得到标识在相机坐标系中的位置,如果想知道相机在标识坐标系中的位置,要用arMatrixInverse()把上面得到的转换矩阵进行反转。
2:当使用OpenGL对ARToolKit进行渲染时,注意OpenGL是一个右手坐标系,z轴指向你,相机面对的方向是-Z,
![](http://www.hitl.washington.edu/artoolkit/documentation/images/ch03-17.gif)
ARToolKit使用的是校正过参数的相机透视,所以会造成OpenGL的投影矩阵的离轴。gluPerspective不能创造一个投影矩阵,要有额外的参数glFrustum;在这里不使用分解ARToolKit投影的参数传递给glFrustum,直接导入OpenGL的投影矩阵,glMatrixMode(GL_PROJECTION_MATRIX); 然后调用 glLoadMatrix。
当使用gsub_lite进行渲染时,调用arglCameraFrustum可以消除离轴影响。
1:
![](http://www.hitl.washington.edu/artoolkit/documentation/images/ATK-coordinates.jpg)
使用arGetTransMat可以得到标识在相机坐标系中的位置,如果想知道相机在标识坐标系中的位置,要用arMatrixInverse()把上面得到的转换矩阵进行反转。
2:当使用OpenGL对ARToolKit进行渲染时,注意OpenGL是一个右手坐标系,z轴指向你,相机面对的方向是-Z,
![](http://www.hitl.washington.edu/artoolkit/documentation/images/ch03-17.gif)
ARToolKit使用的是校正过参数的相机透视,所以会造成OpenGL的投影矩阵的离轴。gluPerspective不能创造一个投影矩阵,要有额外的参数glFrustum;在这里不使用分解ARToolKit投影的参数传递给glFrustum,直接导入OpenGL的投影矩阵,glMatrixMode(GL_PROJECTION_MATRIX); 然后调用 glLoadMatrix。
当使用gsub_lite进行渲染时,调用arglCameraFrustum可以消除离轴影响。
相关文章推荐
- UnboundLocalError: local variable 'XXX' referenced before assignment
- C++面试题(一)——基础概念篇
- 数据库表设计
- Android开发手记(29) 基于Http的LaTeX数学公式转换器
- 20151117
- Kafka设计解析(二)- Kafka High Availability (上)
- CodeForces 260D Black And White Tree 贪心
- Android源码阅读与理解(二):Android系统Build流程详解
- android.support.design.widget.Snackbar 使用
- 随笔记录
- 用java代码实现观察者模式
- 不得不提的volatile及指令重排序(happen-before)
- 独立任务最优调度问题
- iOS category内部实现原理
- 十进制转换为二进制
- Ubuntu下使用Tasksel安装LAMP
- 反射
- ReentrantLock和synchronized的区别
- QString 和 TCHAR 的相互转换
- Android设计模式-----依赖注入