【文件属性】:
文件名称:图形学图形消隐
文件大小:9.36MB
文件格式:RAR
更新时间:2016-05-24 04:45:17
图形学 图形消隐
关于图形 的二次图形消隐和相关文档
长方体的自隐藏线消隐上机指导
1. 实验目的与要求:掌握长方体的表面模型的建立;掌握三维图形的显示流程;掌握长方体自消隐的算法。
2. 实验步骤:
(1)长方体表面模型的定义
三维齐次坐标结构的定义,面结构的定义,面结构中添加可见性属性;顶点表的定义,面表、与顶点表的关系。
(2)几何变换的实现
分别对顶点进行绕X轴旋转和绕Y轴旋转,旋转角度为参数,以实现轴测投影。
(3)消隐
计算每个面的外法向量,与视向量进行点积,给该面的可见性属性赋值。
(4)投影变换的实现
平行投影中正投影的投影变换公式及矩阵,要求以XOY平面为投影平面,Z轴正方向为视线方向。
(3)窗口-视区变换的实现
窗口大小的选取——一般将所有图形都取在窗口内;注意投影变换时投影平面的选取,投影平面上的坐标与视区坐标x,y的对应。
(4)图形显示
显示面表中的每一个面,对于不可见面用虚线绘制该面各边,对于可见面用实线绘制各边。
3. 具体任务
在已给出程序Draw3D2中,在视图类中分别添加绕X轴旋转和绕Y轴旋转的函数void RotateX(int angle)和void RotateY(int angle);在视图类中添加计算外法向量的函数HOMOCOORD GetN(HOMOCOORD p1, HOMOCOORD p2, HOMOCOORD p3),其返回值为外法向量。注意面结构中添加的可见性属性,注意显示图形时对于不可见和可见面的处理。
4. 说明
绕X轴的旋转变化的公式实现:
考虑到旋转变化不影响w分量,可得
其他变换类似。对顶点表每个顶点进行更新。
计算外法向量函数的:
P1,p2,p3为面上逆时针依次相连的三个顶点,由此外法向量N=(p2-p1)×(p3-p2);
若令x1=p2.x-p1.x, y1=p2.y-p1.y, z1=p2.z-p1.z; x2=p3.x-p2.x,
y2=p3.x-p2.x, z2=p3.x-p2.x; 则外法向量可以由下列行列式求出
即
网友评论
- 编程实现长方体,有法向量和光照,谢谢分享
- 消隐是线框图,光照你没有曲面。。。没有看到消隐效果,很失望。
- 还不错啊,希望更多人可以。
- 消隐是线框图,光照你没有曲面
- 消影没看见