计算机图形学 多视区的显示

一、实验目的

1.理解多视区在 OpenGL 中的概念与应用场景,掌握视区划分的原理。

2.熟练运用glViewport函数实现窗口内多个独立视区的创建与管理。

3.掌握在多视区中分别绘制图形、设置不同显示模式(线框、填充)的方法,理解视区与图形渲染的关联逻辑。

4.深入理解二维观察变换的三个关键步骤(指定矩阵堆栈、裁剪窗口、视区),明确坐标变换在多视区场景中的作用。

二、实验内容

通过 OpenGL 编程,在一个窗口内创建两个独立视区,分别在两个视区中绘制具有相同坐标但不同显示模式(线框、填充)和颜色的三角形,以此验证多视区的独立渲染能力,同时巩固二维观察变换的流程。

三、实验代码

  • 实验结果

程序运行后将生成一个标题为 "多视区" 的窗口,窗口被划分为左右两个独立视区:

左侧视区(位置 (0,0),大小 200x200):显示红色线框三角形,三角形以轮廓形式呈现。

右侧视区(位置 (200,0),大小 200x200):显示蓝色填充三角形,三角形以实心形式呈现。

两个视区的三角形坐标逻辑一致,但因显示模式和颜色的差异,视觉效果完全独立,验证了多视区的独立渲染能力,与教材图效果一致

  • 实验心得

本次实验从多维度加深了对 OpenGL 多视区技术的理解。技术原理上,明确glViewport函数是多视区实现的核心,通过指定屏幕矩形区域划分出多个 "虚拟子窗口";同时掌握二维观察变换的三步流程 ------ 指定GL_PROJECTION矩阵堆栈、用gluOrtho2D设置裁剪窗口、用glViewport设置视区,这是图形正确映射的关键。编程实践中,熟练运用 "切换视区→设置属性→绘制图形" 的流程,理解glPolygonMode对线框 / 填充模式的控制,认识到该技术可用于数据对比、多视角预览等多模块可视化场景。效果认知上,通过对比视区图形,直观体会多视区 "同一空间、不同表现" 的优势,也意识到视区参数与图形属性对视觉呈现的直接影响,需按需调控。综上,实验深化了理论认知,提升了分区渲染能力,为复杂场景开发奠定基础。

相关推荐
Jwest202116 小时前
佳维视工业显示器在健康体检一体机中的应用
计算机外设
weixin_402278451 天前
解决打开vscode编辑器ctrl+鼠标左键不能跳转定义问题 环境C++
vscode·编辑器·计算机外设
开开心心就好2 天前
专为视障人士设计的免费辅助工具
windows·计算机视觉·计算机外设·excel·散列表·推荐算法·csdn开发云
天下财经热2 天前
2026编程显示器推荐:明基RD270Q的2K144Hz有多实用?
计算机外设
南棱笑笑生2 天前
20260427给万象奥科的开发板HD-RK3576-PI适配瑞芯微原厂的Android14时【增加鼠标右键返回】
计算机外设·rockchip
维吉斯蔡3 天前
【计算机是怎样跑起来的】(二)CPU、内存、I/O 和总线到底是什么?
笔记·stm32·单片机·物联网·计算机外设·51单片机
编程之升级打怪3 天前
联想电脑进入BIOS的方式
计算机外设
Lanren的编程日记4 天前
Flutter 鸿蒙应用无障碍功能实战:语义化标签+屏幕阅读器+键盘导航,全方位提升应用可用性
flutter·华为·计算机外设·harmonyos
Legendary_0085 天前
Type-C 赋能传统显示器:一线通联,LDR6020 重构显示互联体验
c语言·计算机外设·pd芯片
爱上好庆祝5 天前
学习js的第三天
前端·css·人工智能·学习·计算机外设·js