SWJTU 西南交通大学 计算机图形学实验3

实验三 基本图元的生成

实验要求:

1. 在实验二的基础上,按要求完成如下任务:

(1)添加菜单项或者工具条按钮,分别采用中点法和Bresenham算法实现直线段的绘制。

(2)添加菜单项或者工具条按钮,分别采用中点法和Bresenham算法实现圆的绘制。

(3)添加菜单项或者工具条按钮,采用实区域填充法修改直线或圆的线宽。

(4)添加菜单项或者工具条按钮,采用扫描线法和栅栏填充法对封闭区域(比如矩形,用多义线绘制的三角形或者多边形等)进行填充。

(5)添加菜单项或者工具条按钮,通过多个控制点绘制连续的B样条曲线。

对于(3), 点击Thickline按钮即可在粗线条与普通线条之间切换, 就是说点两下就可以切回去

以上功能都已实现, 不过(4)有点bug:扫描线法(Scanline fill)填充不能填充特别大的图形; 栅栏填充法(Flood fill)只能填充很小的图形.

此外可能还有一些其他的bug没有发现, 欢迎大家指出

其他使用方法详见我的上一篇文章(如果main.exe无法运行, 或者想编译源文件都在我的上一篇文章里)

代码详见:

我的github仓库

或者

https://download.csdn.net/download/qq_73781710/89955753

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你 的 太 阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值