页数:21页文件大小:281.0 KB来源: 计算机图形学ppt课件
本课件讲解三维对象映射为二维对象的投影变换:区分平行投影与透视投影,给出正交平行投影与glOrtho,推导透视投影坐标关系与glFrustum,介绍三类透视的消失点规律,并说明窗口区到视图区的坐标变换。
计算机图形学讲义 第3章 图形变换
3 投影(project)变换
透视投影与平行投影对比示意:透视投影的投影射线汇聚于投影中心,平行投影的投影线互相平行。
OpenGL 下正射投影函数 glOrtho
3.2 透视投影
设投影中心处于坐标系原点,投影平面与 Z 轴垂直并距原点距离为 d。可求得空间点 P(x0,y0,z0) 和投影平面上投影点 P′(xp,yp,zp) 的坐标关系。
OpenGL 下投射投影函数 glFrustum
glFrustum (left, right, bottom, top, near, far)
透视投影分为三类:
实例3
有一正方体其 8 个顶点 ABCDA′B′C′D′ 的坐标依次为 {{200,200,100},{200,300,100},{300,300,100},{300,200,100},{200,200,0},{200,300,0},{300,300,0},{300,200,0}},以对角线 A′C 的中点 O 为固定点,绕 x 轴旋转 30 度,再绕 y 轴旋转 45 度。设投影中心处于 (0,0,−800),投影平面为 z = −100。分别计算旋转后的正方体平行投影后各顶点的坐标,透视投影后各顶点的坐标。
对角线 A′C 的中点 O 的坐标为 (250, 250, 50)。
对正方体的八个顶点分别进行平行投影变换与透视投影变换:最后忽略 z 坐标,把 (xp, yp) 显示在二维平面上。
思考
若投影平面不与 z 轴垂直怎么办?
答
4 视口变换
窗口区和视图区的坐标变换
作业
有一正方体其 8 个顶点 ABCDA′B′C′D′ 的坐标依次为 {{200,200,100},{200,300,100},{300,300,100},{300,200,100},{200,200,0},{200,300,0},{300,300,0},{300,200,0}},绕经过点 {0,0,0} 和 {1,1,1} 的直线旋转 60 度。设投影中心处于 (0,0,−1000),投影平面为 z = −200。分别计算旋转后的正方体平行投影后各顶点的坐标,透视投影后各顶点的坐标。
下载地址:{{downurl}}
{{{a}}}
{{#b}}{{{b}}}
{{/b}} {{/title}} {{#nolog}}登陆注册
{{/nolog}} {{#djsx}}点我刷新
{{/djsx}} {{#gocz}} {{/gocz}} {{#ffqr}} {{/ffqr}}