橘子钟表 铜牌收录

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

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

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

素数螺旋线 银牌收录

素数螺旋线,是对阿基米德螺旋线的改造,他只绘制整数点,并排除了所有合数点。 倍数螺旋线,是对这张完整点图的改造。

冰墩墩 铜牌收录

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

阿基米德螺旋线 银牌收录

最初是想用阿基米德螺旋线实现可视化 π,于是学习了泰勒展开计算 π 的过程,同理举一反三实现了计算 e 的过程,学习了画阿基米德螺旋线。后来又实现了一种“走路的直线”,来可视化有理数。本程序糅合了所有功能,实现用螺旋线和行走线,来可视化无理数 π,无理数 e 和有理数。

施泰纳球极平面射影 银牌收录

同心圆套内切圆的实现,也是施泰纳球极平面射影原理的可视化实践。参考视频用了立体投影一词。我在视频中理解了原理,于是自己推公式才能还原出来。

这是一个表白神器 铜牌收录

这是一个表白神器,雪花飘落划过的痕迹,会渐渐显示出来隐藏的文字。文字可以自己替换上图片识别。程序默认是识别 640×480 尺寸,可以自己调整。

爱的心脏线 铜牌收录

大一的时候听说了 r = a(1 - cosθ) 这个方程,当时想试着自己推出它的直角坐标系方程,可惜数学不好解不出来,现在感觉编程能力变强了,就试着用程序画出这个方程的图像。这个方程本质上就是一个圆绕着另一个圆转一周时动圆上某个定点的轨迹,看起来像心脏线,而且有数学家笛卡尔与爱徒的故事做背景,这个方程还染上了一丝浪漫的气氛。现在成功用代码把这个爱心方程画出来了。

EasyX 绘图库硬核实现基于配置文件动态创建 GUI 按钮实例教程

使用 EasyX 绘图库做一个简单高亮,按动特效、声效、的封闭按钮,支持鼠标操作,使用配置文件动态创建按钮,给需要编写 GUI 程序的小伙伴们一个硬核参考。 按钮创建函数 button 和鼠标配套传参函数 buttonparm 。 目的:使用配置文件进行按钮封装,进行更加自由方便的批量创建按钮。

令小也画作绘制 金牌收录

这是一张完全用代码画出来的卡通人物。我用的是令小也的作品,通过观察寻找绘制的规律,然后分析绘制的层次。在用程序绘制比较复杂的画作时,一定要耐心,将画作的层次分析清楚,可以大大节省很多代码量。一般都是将复杂的图形用简单的图形进行拼接,覆盖等方式进行绘制。