|
CBlueUI
C++ 跨平台跨框架的数据可视化工具
|
3D图形渲染之观察者 更多...
Public 成员函数 | |
| GCamera () | |
| ~GCamera () | |
| void | LookAt (VecFloat3 eye, VecFloat3 target, VecFloat3 up) |
| 设置相机(观察者)空间。参数是基于 世界坐标系 (World Space) 的。以(0,0)为原点 | |
| void | Ortho (float left, float right, float bottom, float top, float near_plane=NEAR_PLANE_DEFAULT, float far_plane=FAR_PLANE_DEFAULT) |
| 正交投影。参数的每一个值,是基于相机(观察者)空间的。已眼睛(Eye)位置为原点 | |
| void | Perspective (float fovy, float aspect, float near_plane=0.01, float far_plane=100.0) |
| 透视投影。参数的每一个值,是基于相机(观察者)空间的。已眼睛(Eye)位置为原点 | |
| glm::mat4 | ProjectionMatrix () |
| 获得投影矩阵。作用:把 相机空间 转换到 裁剪空间(Clip Space)。 | |
Public 属性 | |
| VecFloat3 | m_eye |
| VecFloat3 | m_target |
| VecFloat3 | m_up |
| BOOL | m_is_ortho |
| float | m_z_near |
| float | m_z_far |
| float | m_fov_angle |
| float | m_aspect_ratio |
| float | m_ortho_x1 |
| float | m_ortho_x2 |
| float | m_ortho_y1 |
| float | m_ortho_y2 |
3D图形渲染之观察者
| BUI::GCamera::GCamera | ( | ) |
| BUI::GCamera::~GCamera | ( | ) |
设置相机(观察者)空间。参数是基于 世界坐标系 (World Space) 的。以(0,0)为原点
| eye | : 相机位置 |
| target | : 视线方向 |
| up | : 相机向上方向 |
| void BUI::GCamera::Ortho | ( | float | left, |
| float | right, | ||
| float | bottom, | ||
| float | top, | ||
| float | near_plane = NEAR_PLANE_DEFAULT, |
||
| float | far_plane = FAR_PLANE_DEFAULT |
||
| ) |
正交投影。参数的每一个值,是基于相机(观察者)空间的。已眼睛(Eye)位置为原点
| left | : 左侧 |
| right | : 右侧 |
| top | : 顶部 |
| bottom | : 底部 |
| near_plane | : 近平面 |
| far_plane | : 远平面 |
| void BUI::GCamera::Perspective | ( | float | fovy, |
| float | aspect, | ||
| float | near_plane = 0.01, |
||
| float | far_plane = 100.0 |
||
| ) |
透视投影。参数的每一个值,是基于相机(观察者)空间的。已眼睛(Eye)位置为原点
| fovy | : 视野大小。单位:角度 |
| aspect | : 宽高比。计算公式:viewportWidth / viewportHeight |
| near_plane | : 近平面 |
| far_plane | : 远平面 |
| glm::mat4 BUI::GCamera::ProjectionMatrix | ( | ) |
获得投影矩阵。作用:把 相机空间 转换到 裁剪空间(Clip Space)。
| float BUI::GCamera::m_aspect_ratio |
| VecFloat3 BUI::GCamera::m_eye |
| float BUI::GCamera::m_fov_angle |
| BOOL BUI::GCamera::m_is_ortho |
| float BUI::GCamera::m_ortho_x1 |
| float BUI::GCamera::m_ortho_x2 |
| float BUI::GCamera::m_ortho_y1 |
| float BUI::GCamera::m_ortho_y2 |
| VecFloat3 BUI::GCamera::m_target |
| VecFloat3 BUI::GCamera::m_up |
| float BUI::GCamera::m_z_far |
| float BUI::GCamera::m_z_near |