没有合适的资源?快使用搜索试试~ 我知道了~
首页3d照相机成像原理视景体详解
资源详情
资源评论
资源推荐
1
Projection and View Frustums
David E. Johnson
I. INTRODUCTION
In mathematics, a projection reduces an N-dimensional vector space R
N
to a subspace W. This subspace is likely
lower-dimensional than the original space. For example, a shadow is a projection of 3-space onto a 2D manifold.
A projection matrix is an N × N square matrix that defines the projection, although other projection operators are
valid. An example is the dot product of a vector with a unit vector u
proj
u
l = (l · u)u
which returns a vector on u with a length of l in the u direction. All these projections are linear transformations.
Thinking of the shadow example, straight lines connect all points on the 3D object to the projected shadow. Since
it is a linear transformation, the dot product can be encoded as a matrix as well.
u
x
u
x
u
y
u
x
u
x
u
y
u
y
u
y
l
x
l
y
=
(u
x
l
x
+ u
y
l
y
)u
x
(u
x
l
x
+ u
y
l
y
)u
y
= (l · u)u.
A projection matrix P has the property that
P
2
= P .
This makes intuitive sense since once the dimensionality of the original object has been reduced, projecting it
again leaves it the same. Take this example, where P is
P =
1 0 0
0 1 0
0 0 0
.
This projection takes an object from a 3D (x, y, z) space to a 2D (x, y) space. Performing matrix multiplication
P
2
=
1 0 0
0 1 0
0 0 0
1 0 0
0 1 0
0 0 0
=
1 0 0
0 1 0
0 0 0
= P ,
so its projection property is verified.
Makers of maps, illustrators, architects, and engineers have developed conventions for a number of projections.
Computer graphics regularly uses just a few of them. The proir example projection from 3D to a 2D is a basic
operation in computer graphics, where a 3D virtual world must be mapped to the 2D screen. In virtual reality, an
application developer must sometimes use projections that are non-standard for typical graphics programs.
A. Orthogonal Projections
An orthogonal projection takes points in space onto a viewing plane where all the motions of the points are
orthgonal, or normal, to the viewing plane. The previous example transformation is an example of an orthogonal
projection. Figure 1 shows a orthogonal projection of a virtual object onto the viewing plane. The box surrounding
the viewing plane and virtual space represents the viewing frustum or view frustum. The view frustum represents the
region of space that is projected onto the viewing plane. It defines the field of view of the virtual camera defining
the projection.
In OpenGL, the view frustum shape is set on the GL_PROJECTION stack and the glOrtho command creates
orthogonal projections.
glMatrixMode(GL_PROJECTION);
glOrtho( left, right, bottom, top, near, far);
trickeryoung
- 粉丝: 0
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- zigbee-cluster-library-specification
- JSBSim Reference Manual
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0