橘子钟表 铜牌收录

这个橘子钟表程序主要分成三个部分:画表盘、画表针、显示当前时间。画表盘部分运用到了三次贝塞尔曲线、HSL 颜色模型以及字符串格式化命令,其中三次贝塞尔曲线确定点的坐标比较复杂。画表针主要涉及到计算各表针运动的弧度。显示当前时间所用字体为等宽字体,其作用在于居中后效果更均匀。

在 EasyX 中使用外部字体文件设置字体样式 铜牌收录

在 EasyX 输出字体的时候,要求字体在当前环境中可用,否则就无法看到字体的效果。使用系统中默认存在的字体比较简单,可以直接使用。但是如果字体是自己精心挑选的,系统中不存在,将程序发给别人以后,要求别人安装字体才能启动程序看到效果,就不太合适了。本文详细讲述在不安装字体的前提下如何通过字体文件设置字体样式。

保留透明(Alpha)信息地旋转图像 铜牌收录

EasyX 的旋转函数 rotateimage 不支持含有透明信息的图像的旋转,在设置了背景色的情况下会丢失透明信息,故特地编写了保留透明信息的旋转函数。 在此之前也有人写过此类旋转函数,旋转效果很好,也实现了目标效果,可惜存在一些致命 Bug,否则我也不会再造轮子。此旋转函数是原创的,取前人所长,去前人所短,绝对能满足您的旋转需求,让您也不必再造轮子。

2048 游戏 铜牌收录

2048 是一款益智小游戏,相信许多人都被其独特的魅力而深深折服(虐)过。在工作、学习的闲暇之余,尝试一下这样一款益智游戏,不失为放松身心、锻炼大脑的明智之举。准备好燃烧大脑了吗?想要自己用C++编制出这样一款小游戏吗?来看看我用 EasyX 实现的高仿原版版本 2048Game。(QAQ)

3D 渐去文字特效 银牌收录

实现了文字从屏幕底部逐渐向上滚动的效果。利用压缩图像和改变亮度的方式,使其看起来像是 3D 的文字在屏幕上滚动,看起来很酷。

车牌定位及分割 金牌收录

车牌定位及分割,涉及到转换灰度,高斯平滑,中值滤波,边缘检测,形态学滤波,轮廓查找。对于原作中存在不能识别某些环境下的车牌;车尾部有一串拼音(有的车有),很容易框住好几个等问题,进行了改进。

冰墩墩 铜牌收录

将冰墩墩简化成多个椭圆,并且按照不同部位,分步用函数分别绘制,冰墩墩的具体细节没有去刻画。适合初学者借鉴学习与加以细化,例如可以细化一下冰墩墩的腿部和手部细节,将它肚子上的文字改成冬奥 LOGO,改变一下眼睛的颜色等等,还可以画一只雪容融。