欧阳鸿荣 161220096
(南京大学 计算机科学与技术系 南京 210093)
【摘要】:本绘图系统模拟了Windows下的绘图工具,实现了直线、曲线、圆、椭圆和多边形的输入,编辑和平移、旋转缩放等变换功能,同时实现了直线的裁剪、任意区域的填充以及二维图形的存储功能,能够将绘制出来的图形保存为图像。并且支持三维模型的显示,能够载入并显示一个OFF格式的三维模型。2D图像的操作主要通过鼠标,3D图像的操作主要通过键盘,交互方便,界面清新简洁。
《计算机图形学》系统使用说明书1.综述1.1 基本功能:1.2 扩展功能:1.3 演示2.开发环境与编译说明3.程序运行说明4.程序使用说明4.1 打开画面:4.2 创建新画布:4.3 直线的输入和编辑:4.3.1.直线的输入:4.3.2 直线的编辑:4.3.3 直线的变换:4.4 曲线的输入和编辑4.4.1 曲线的输入:4.4.2 曲线的编辑:4.4.3 曲线的变换:4.5 圆的输入和编辑:4.5.1 圆的输入:4.5.2 圆的编辑:4.5.3 圆的变换:4.6 椭圆的输入和编辑:4.6.1 椭圆的输入:4.6.2 椭圆的编辑:4.6.3 椭圆的变换:4.7 多边形的输入和编辑:4.7.1 多边形的输入:4.7.2 多边形的编辑:4.7.3 多边形的变换:4.8 填充:4.9 保存:4.10 3D图形的显示:4.10.1 打开OFF文件4.10.2 调整查看3D模型方式4.11 撤销:4.12 清屏:4.13 颜色选择:4.14 打开文件:4.15 画笔和笔刷:4.16关于:5.致谢
直线、曲线、圆、椭圆、多边形的输入实现
填充区域的输入
直线、曲线、圆,椭圆,多边形的编辑
实现直线的裁剪
裁剪窗口可用鼠标点击拖动输入
裁剪后的图形仍然可以编辑
直线、曲线、圆、椭圆、多边形的平移
直线、曲线、圆、椭圆、多边形的旋转
任意角度旋转
直线、圆的旋转实现了精度控制
直线、曲线、圆、椭圆、多边形的缩放
对变换后的图形仍然可以编辑
系统名 | 语言和框架 | IDE | 编译器 |
---|---|---|---|
PaintYoung | C++和Qt 5.11.2 | Qt Creator | MinGW 5.3.0 |
本绘图系统名为YoungPaint,基于C++和Qt 5.11.2,于Qt Creator上开发,编译环境为MinGW 5.3.0。
编译开发的构建配置如下图:
程序通过deployqt工具打包,并且通过Enigma Virtual Box工具集成在了161220096_可执行文件.exe文件中,可以直接点击运行使用。使用时如果有未响应事件,再次点击运行即可。
为了更好地展现使用效果,我采用GIF图的形式。但是PDF不能显示GIF,因此还麻烦助教能够打开我提供的markdown版本或者html版本查看更为详细的使用说明。如有不便,十分抱歉。
4.3.4 直线的裁剪:
点击上方工具栏的曲线,则可绘制曲线。曲线的绘制分为两个步骤
曲线的绘制过程中,若控制点数目较少时,会显示会绘制点的动画。
打开OFF文件后,由于读取时对坐标做了标准化,因此图形会在视窗中央
此时可以通过方向键和小键盘的1235键(可看做另一个方向键)进行视角和旋转
感谢孙正兴老师和张岩老师的辛勤教学,感谢各位助教在百忙之中解答我的各种疑惑,感谢我的舍友和系友们在关于大作业的各种问题给我的指导和帮助。